class Concurrent::JavaThreadLocalVar
@!visibility private @!macro internal_implementation_note
Public Instance Methods
bind(value) { || ... }
click to toggle source
@!macro thread_local_var_method_bind
# File lib/concurrent/atomic/java_thread_local_var.rb, line 30 def bind(value, &block) if block_given? old_value = @var.get begin @var.set(value) yield ensure @var.set(old_value) end end end
value()
click to toggle source
@!macro thread_local_var_method_get
# File lib/concurrent/atomic/java_thread_local_var.rb, line 12 def value value = @var.get if value.nil? @default elsif value == NULL nil else value end end
value=(value)
click to toggle source
@!macro thread_local_var_method_set
# File lib/concurrent/atomic/java_thread_local_var.rb, line 25 def value=(value) @var.set(value) end
Protected Instance Methods
allocate_storage()
click to toggle source
@!visibility private
# File lib/concurrent/atomic/java_thread_local_var.rb, line 45 def allocate_storage @var = java.lang.ThreadLocal.new end