Exception: Concurrent::ConcurrentUpdateError
- Inherits:
-
ThreadError
- Object
- ThreadError
- Concurrent::ConcurrentUpdateError
- Defined in:
- lib/concurrent/atomic_reference/concurrent_update_error.rb
Overview
An object reference that may be updated atomically. All read and write operations have java volatile semantic.
Testing with ruby 2.1.2 Testing with Concurrent::MutexAtomicBoolean... 2.790000 0.000000 2.790000 ( 2.791454) Testing with Concurrent::CAtomicBoolean... 0.740000 0.000000 0.740000 ( 0.740206)
Testing with jruby 1.9.3 Testing with Concurrent::MutexAtomicBoolean... 5.240000 2.520000 7.760000 ( 3.683000) Testing with Concurrent::JavaAtomicBoolean... 3.340000 0.010000 3.350000 ( 0.855000)
Constant Summary
- CONC_UP_ERR_BACKTRACE =
frozen pre-allocated backtrace to speed ConcurrentUpdateError
['backtrace elided; set verbose to enable'].freeze
Instance Method Summary (collapse)
-
- (Boolean) compare_and_set
Atomically sets the value to the given updated value if the current value == the expected value.
-
- (Object) get
Gets the current value.
-
- (Object) get_and_set
Atomically sets to the given value and returns the old value.
- - (undocumented) initialize constructor
-
- (Object) set
Sets to the given value.
Constructor Details
- (undocumented) initialize
4 5 6 7 |
# File 'lib/concurrent/atomic_reference/concurrent_update_error.rb', line 4 class ConcurrentUpdateError < ThreadError # frozen pre-allocated backtrace to speed ConcurrentUpdateError CONC_UP_ERR_BACKTRACE = ['backtrace elided; set verbose to enable'].freeze end |
Instance Method Details
- (Boolean) compare_and_set
Atomically sets the value to the given updated value if the current value == the expected value.
that the actual value was not equal to the expected value.
4 5 6 7 |
# File 'lib/concurrent/atomic_reference/concurrent_update_error.rb', line 4 class ConcurrentUpdateError < ThreadError # frozen pre-allocated backtrace to speed ConcurrentUpdateError CONC_UP_ERR_BACKTRACE = ['backtrace elided; set verbose to enable'].freeze end |
- (Object) get
Gets the current value.
4 5 6 7 |
# File 'lib/concurrent/atomic_reference/concurrent_update_error.rb', line 4 class ConcurrentUpdateError < ThreadError # frozen pre-allocated backtrace to speed ConcurrentUpdateError CONC_UP_ERR_BACKTRACE = ['backtrace elided; set verbose to enable'].freeze end |
- (Object) get_and_set
Atomically sets to the given value and returns the old value.
4 5 6 7 |
# File 'lib/concurrent/atomic_reference/concurrent_update_error.rb', line 4 class ConcurrentUpdateError < ThreadError # frozen pre-allocated backtrace to speed ConcurrentUpdateError CONC_UP_ERR_BACKTRACE = ['backtrace elided; set verbose to enable'].freeze end |
- (Object) set
Sets to the given value.
4 5 6 7 |
# File 'lib/concurrent/atomic_reference/concurrent_update_error.rb', line 4 class ConcurrentUpdateError < ThreadError # frozen pre-allocated backtrace to speed ConcurrentUpdateError CONC_UP_ERR_BACKTRACE = ['backtrace elided; set verbose to enable'].freeze end |