diff options
| author | Brian Anderson <banderson@mozilla.com> | 2012-02-02 18:29:03 -0800 |
|---|---|---|
| committer | Brian Anderson <banderson@mozilla.com> | 2012-02-02 18:29:03 -0800 |
| commit | 3b4dd26ff1ac2bea0dec22ea35f1b0a850f4ecb4 (patch) | |
| tree | 98db750a2406166d8a70b138c5243281a0d7f01b /src/rt | |
| parent | 9c33f2c561c77567738ee949d0c39122daec063b (diff) | |
| download | rust-3b4dd26ff1ac2bea0dec22ea35f1b0a850f4ecb4.tar.gz rust-3b4dd26ff1ac2bea0dec22ea35f1b0a850f4ecb4.zip | |
rt: Remove lock_and_signal::signal_all
Diffstat (limited to 'src/rt')
| -rw-r--r-- | src/rt/rust_scheduler.cpp | 2 | ||||
| -rw-r--r-- | src/rt/sync/lock_and_signal.cpp | 16 | ||||
| -rw-r--r-- | src/rt/sync/lock_and_signal.h | 1 |
3 files changed, 1 insertions, 18 deletions
diff --git a/src/rt/rust_scheduler.cpp b/src/rt/rust_scheduler.cpp index 0e559d56060..4262c34c6dc 100644 --- a/src/rt/rust_scheduler.cpp +++ b/src/rt/rust_scheduler.cpp @@ -358,7 +358,7 @@ rust_scheduler::exit() { A(this, !lock.lock_held_by_current_thread(), "Shouldn't have lock"); scoped_lock with(lock); should_exit = true; - lock.signal_all(); + lock.signal(); } // diff --git a/src/rt/sync/lock_and_signal.cpp b/src/rt/sync/lock_and_signal.cpp index a18bc0ea027..e82e6dc51b7 100644 --- a/src/rt/sync/lock_and_signal.cpp +++ b/src/rt/sync/lock_and_signal.cpp @@ -18,11 +18,6 @@ lock_and_signal::lock_and_signal() : _holding_thread(INVALID_THREAD) { - // FIXME: In order to match the behavior of pthread_cond_broadcast on - // Windows, we create manual reset events. This however breaks the - // behavior of pthread_cond_signal, fixing this is quite involved: - // refer to: http://www.cs.wustl.edu/~schmidt/win32-cv-1.html - _event = CreateEvent(NULL, TRUE, FALSE, NULL); InitializeCriticalSection(&_cs); } @@ -92,17 +87,6 @@ void lock_and_signal::signal() { #endif } -/** - * Signal condition, and resume all waiting threads. - */ -void lock_and_signal::signal_all() { -#if defined(__WIN32__) - SetEvent(_event); -#else - CHECKED(pthread_cond_broadcast(&_cond)); -#endif -} - bool lock_and_signal::lock_held_by_current_thread() { #if defined(__WIN32__) diff --git a/src/rt/sync/lock_and_signal.h b/src/rt/sync/lock_and_signal.h index 654731269f1..4fc629b9fac 100644 --- a/src/rt/sync/lock_and_signal.h +++ b/src/rt/sync/lock_and_signal.h @@ -22,7 +22,6 @@ public: void unlock(); void wait(); void signal(); - void signal_all(); bool lock_held_by_current_thread(); }; |
