diff --git a/lib/concurrent-ruby/concurrent/synchronization/jruby_lockable_object.rb b/lib/concurrent-ruby/concurrent/synchronization/jruby_lockable_object.rb index 359a032b7..76930461b 100644 --- a/lib/concurrent-ruby/concurrent/synchronization/jruby_lockable_object.rb +++ b/lib/concurrent-ruby/concurrent/synchronization/jruby_lockable_object.rb @@ -1,7 +1,9 @@ +require 'concurrent/utility/native_extension_loader' # load native parts first + module Concurrent module Synchronization - if Concurrent.on_jruby? && Concurrent.java_extensions_loaded? + if Concurrent.on_jruby? # @!visibility private # @!macro internal_implementation_note diff --git a/lib/concurrent-ruby/concurrent/utility/native_extension_loader.rb b/lib/concurrent-ruby/concurrent/utility/native_extension_loader.rb index 9b1bce06c..02568ae87 100644 --- a/lib/concurrent-ruby/concurrent/utility/native_extension_loader.rb +++ b/lib/concurrent-ruby/concurrent/utility/native_extension_loader.rb @@ -15,10 +15,6 @@ def c_extensions_loaded? defined?(@c_extensions_loaded) && @c_extensions_loaded end - def java_extensions_loaded? - defined?(@java_extensions_loaded) && @java_extensions_loaded - end - def load_native_extensions if Concurrent.on_cruby? && !c_extensions_loaded? ['concurrent/concurrent_ruby_ext', @@ -50,6 +46,10 @@ def set_c_extensions_loaded @c_extensions_loaded = true end + def java_extensions_loaded? + defined?(@java_extensions_loaded) && @java_extensions_loaded + end + def set_java_extensions_loaded @java_extensions_loaded = true end