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

Version Path
zuora_connect_ui-0.7.0 vendor/ruby/2.6.0/gems/concurrent-ruby-1.1.5/lib/concurrent/atomic/java_count_down_latch.rb
ric-0.13.0 vendor/bundle/ruby/2.5.0/gems/concurrent-ruby-1.1.5/lib/concurrent/atomic/java_count_down_latch.rb
cocoapods-dependency-html-0.0.2 vendor/bundle/gems/concurrent-ruby-1.1.5/lib/concurrent/atomic/java_count_down_latch.rb
cocoapods-dependency-html-0.0.1 vendor/bundle/gems/concurrent-ruby-1.1.5/lib/concurrent/atomic/java_count_down_latch.rb
ric-0.12.2 vendor/bundle/ruby/2.5.0/gems/concurrent-ruby-1.1.5/lib/concurrent/atomic/java_count_down_latch.rb
vagrant-unbundled-2.2.4.0 vendor/bundle/ruby/2.5.0/gems/concurrent-ruby-1.1.3/lib/concurrent/atomic/java_count_down_latch.rb
vagrant-unbundled-2.2.4.0 vendor/bundle/ruby/2.5.0/gems/concurrent-ruby-1.1.4/lib/concurrent/atomic/java_count_down_latch.rb
vagrant-unbundled-2.2.4.0 vendor/bundle/ruby/2.6.0/gems/concurrent-ruby-1.1.5/lib/concurrent/atomic/java_count_down_latch.rb
concurrent-ruby-1.1.5 lib/concurrent/atomic/java_count_down_latch.rb
vagrant-unbundled-2.2.3.0 vendor/bundle/ruby/2.5.0/gems/concurrent-ruby-1.1.4/lib/concurrent/atomic/java_count_down_latch.rb
vagrant-unbundled-2.2.3.0 vendor/bundle/ruby/2.5.0/gems/concurrent-ruby-1.1.3/lib/concurrent/atomic/java_count_down_latch.rb
tdiary-5.0.11 vendor/bundle/gems/concurrent-ruby-1.1.4/lib/concurrent/atomic/java_count_down_latch.rb
nullifyable-0.1.0 vendor/bundle/gems/concurrent-ruby-1.1.4/lib/concurrent/atomic/java_count_down_latch.rb
concurrent-ruby-1.1.4 lib/concurrent/atomic/java_count_down_latch.rb
vagrant-unbundled-2.2.2.0 vendor/bundle/ruby/2.5.0/gems/concurrent-ruby-1.1.3/lib/concurrent/atomic/java_count_down_latch.rb
concurrent-ruby-1.1.3 lib/concurrent/atomic/java_count_down_latch.rb
concurrent-ruby-1.1.2 lib/concurrent/atomic/java_count_down_latch.rb
concurrent-ruby-1.1.1 lib/concurrent/atomic/java_count_down_latch.rb