class Concurrent::Collection::SynchronizedMapBackend
@!visibility private
Public Class Methods
new(*args, &block)
click to toggle source
Calls superclass method
Concurrent::Collection::NonConcurrentMapBackend::new
# File lib/concurrent-ruby/concurrent/collection/map/synchronized_map_backend.rb, line 11 def initialize(*args, &block) super # WARNING: Mutex is a non-reentrant lock, so the synchronized methods are # not allowed to call each other. @mutex = Mutex.new end
Public Instance Methods
[](key)
click to toggle source
Calls superclass method
Concurrent::Collection::NonConcurrentMapBackend#[]
# File lib/concurrent-ruby/concurrent/collection/map/synchronized_map_backend.rb, line 19 def [](key) @mutex.synchronize { super } end
[]=(key, value)
click to toggle source
Calls superclass method
Concurrent::Collection::NonConcurrentMapBackend#[]=
# File lib/concurrent-ruby/concurrent/collection/map/synchronized_map_backend.rb, line 23 def []=(key, value) @mutex.synchronize { super } end
clear()
click to toggle source
Calls superclass method
Concurrent::Collection::NonConcurrentMapBackend#clear
# File lib/concurrent-ruby/concurrent/collection/map/synchronized_map_backend.rb, line 67 def clear @mutex.synchronize { super } end
compute(key)
click to toggle source
Calls superclass method
Concurrent::Collection::NonConcurrentMapBackend#compute
# File lib/concurrent-ruby/concurrent/collection/map/synchronized_map_backend.rb, line 35 def compute(key) @mutex.synchronize { super } end
compute_if_absent(key)
click to toggle source
Calls superclass method
Concurrent::Collection::NonConcurrentMapBackend#compute_if_absent
# File lib/concurrent-ruby/concurrent/collection/map/synchronized_map_backend.rb, line 27 def compute_if_absent(key) @mutex.synchronize { super } end
compute_if_present(key)
click to toggle source
Calls superclass method
Concurrent::Collection::NonConcurrentMapBackend#compute_if_present
# File lib/concurrent-ruby/concurrent/collection/map/synchronized_map_backend.rb, line 31 def compute_if_present(key) @mutex.synchronize { super } end
delete(key)
click to toggle source
Calls superclass method
Concurrent::Collection::NonConcurrentMapBackend#delete
# File lib/concurrent-ruby/concurrent/collection/map/synchronized_map_backend.rb, line 59 def delete(key) @mutex.synchronize { super } end
delete_pair(key, value)
click to toggle source
Calls superclass method
Concurrent::Collection::NonConcurrentMapBackend#delete_pair
# File lib/concurrent-ruby/concurrent/collection/map/synchronized_map_backend.rb, line 63 def delete_pair(key, value) @mutex.synchronize { super } end
get_and_set(key, value)
click to toggle source
Calls superclass method
Concurrent::Collection::NonConcurrentMapBackend#get_and_set
# File lib/concurrent-ruby/concurrent/collection/map/synchronized_map_backend.rb, line 51 def get_and_set(key, value) @mutex.synchronize { super } end
get_or_default(key, default_value)
click to toggle source
Calls superclass method
Concurrent::Collection::NonConcurrentMapBackend#get_or_default
# File lib/concurrent-ruby/concurrent/collection/map/synchronized_map_backend.rb, line 75 def get_or_default(key, default_value) @mutex.synchronize { super } end
key?(key)
click to toggle source
Calls superclass method
Concurrent::Collection::NonConcurrentMapBackend#key?
# File lib/concurrent-ruby/concurrent/collection/map/synchronized_map_backend.rb, line 55 def key?(key) @mutex.synchronize { super } end
merge_pair(key, value)
click to toggle source
Calls superclass method
Concurrent::Collection::NonConcurrentMapBackend#merge_pair
# File lib/concurrent-ruby/concurrent/collection/map/synchronized_map_backend.rb, line 39 def merge_pair(key, value) @mutex.synchronize { super } end
replace_if_exists(key, new_value)
click to toggle source
Calls superclass method
Concurrent::Collection::NonConcurrentMapBackend#replace_if_exists
# File lib/concurrent-ruby/concurrent/collection/map/synchronized_map_backend.rb, line 47 def replace_if_exists(key, new_value) @mutex.synchronize { super } end
replace_pair(key, old_value, new_value)
click to toggle source
Calls superclass method
Concurrent::Collection::NonConcurrentMapBackend#replace_pair
# File lib/concurrent-ruby/concurrent/collection/map/synchronized_map_backend.rb, line 43 def replace_pair(key, old_value, new_value) @mutex.synchronize { super } end
size()
click to toggle source
Calls superclass method
Concurrent::Collection::NonConcurrentMapBackend#size
# File lib/concurrent-ruby/concurrent/collection/map/synchronized_map_backend.rb, line 71 def size @mutex.synchronize { super } end
Private Instance Methods
dupped_backend()
click to toggle source
Calls superclass method
Concurrent::Collection::NonConcurrentMapBackend#dupped_backend
# File lib/concurrent-ruby/concurrent/collection/map/synchronized_map_backend.rb, line 80 def dupped_backend @mutex.synchronize { super } end