class Concurrent::JavaCountDownLatch
@!macro count_down_latch @!visibility private @!macro internal_implementation_note
Public Class Methods
Source
# File lib/concurrent-ruby/concurrent/atomic/java_count_down_latch.rb, line 11 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_initialize
Public Instance Methods
Source
# File lib/concurrent-ruby/concurrent/atomic/java_count_down_latch.rb, line 37 def count @latch.getCount end
@!macro count_down_latch_method_count
Source
# File lib/concurrent-ruby/concurrent/atomic/java_count_down_latch.rb, line 32 def count_down @latch.countDown end
@!macro count_down_latch_method_count_down
Source
# File lib/concurrent-ruby/concurrent/atomic/java_count_down_latch.rb, line 18 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_wait