Module: RaceGuard::SharedState
- Defined in:
- lib/race_guard/shared_state.rb,
lib/race_guard/shared_state/watcher.rb,
lib/race_guard/shared_state/mutex_stack.rb,
lib/race_guard/shared_state/trace_point.rb,
lib/race_guard/shared_state/access_event.rb,
lib/race_guard/shared_state/memo_scanner.rb,
lib/race_guard/shared_state/memo_registry.rb,
lib/race_guard/shared_state/conflict_tracker.rb
Defined Under Namespace
Modules: MemoRegistry, MemoScanner, MutexStack, TracePoint, Watcher
Classes: AccessEvent, ConflictTracker
Class Method Summary
collapse
Class Method Details
.mark_multi_threaded! ⇒ Object
23
24
25
26
|
# File 'lib/race_guard/shared_state.rb', line 23
def self.mark_multi_threaded!
@multi_mutex ||= Mutex.new
@multi_mutex.synchronize { @multi_threaded = true }
end
|
.multi_threaded? ⇒ Boolean
28
29
30
31
|
# File 'lib/race_guard/shared_state.rb', line 28
def self.multi_threaded?
@multi_mutex ||= Mutex.new
@multi_mutex.synchronize { @multi_threaded }
end
|
.reset! ⇒ Object
16
17
18
19
20
21
|
# File 'lib/race_guard/shared_state.rb', line 16
def self.reset!
@multi_mutex ||= Mutex.new
@multi_mutex.synchronize { @multi_threaded = false }
Watcher.reset!
MemoRegistry.reset!
end
|