Sha256: 72eca0da64e167191ff0c93487df9ea7c9f700bcf52b144bce2ef06f4de9f514
Contents?: true
Size: 1.08 KB
Versions: 118
Compression:
Stored size: 1.08 KB
Contents
if Concurrent.on_jruby? module Concurrent # @!macro count_down_latch # @!visibility private # @!macro internal_implementation_note class JavaCountDownLatch # @!macro count_down_latch_method_initialize def initialize(count = 1) Utility::NativeInteger.ensure_integer_and_bounds(count) Utility::NativeInteger.ensure_positive(count) @latch = java.util.concurrent.CountDownLatch.new(count) end # @!macro count_down_latch_method_wait def wait(timeout = nil) result = nil if timeout.nil? Synchronization::JRuby.sleep_interruptibly { @latch.await } result = true else Synchronization::JRuby.sleep_interruptibly do result = @latch.await(1000 * timeout, java.util.concurrent.TimeUnit::MILLISECONDS) end end result end # @!macro count_down_latch_method_count_down def count_down @latch.countDown end # @!macro count_down_latch_method_count def count @latch.getCount end end end end
Version data entries
118 entries across 104 versions & 25 rubygems