aboutsummaryrefslogtreecommitdiff
path: root/rtc_base/event_unittest.cc
diff options
context:
space:
mode:
Diffstat (limited to 'rtc_base/event_unittest.cc')
-rw-r--r--rtc_base/event_unittest.cc19
1 files changed, 9 insertions, 10 deletions
diff --git a/rtc_base/event_unittest.cc b/rtc_base/event_unittest.cc
index 31118877cf..a634d6e426 100644
--- a/rtc_base/event_unittest.cc
+++ b/rtc_base/event_unittest.cc
@@ -43,22 +43,21 @@ TEST(EventTest, AutoReset) {
class SignalerThread {
public:
- SignalerThread() : thread_(&ThreadFn, this, "EventPerf") {}
void Start(Event* writer, Event* reader) {
writer_ = writer;
reader_ = reader;
- thread_.Start();
+ thread_ = PlatformThread::SpawnJoinable(
+ [this] {
+ while (!stop_event_.Wait(0)) {
+ writer_->Set();
+ reader_->Wait(Event::kForever);
+ }
+ },
+ "EventPerf");
}
void Stop() {
stop_event_.Set();
- thread_.Stop();
- }
- static void ThreadFn(void* param) {
- auto* me = static_cast<SignalerThread*>(param);
- while (!me->stop_event_.Wait(0)) {
- me->writer_->Set();
- me->reader_->Wait(Event::kForever);
- }
+ thread_.Finalize();
}
Event stop_event_;
Event* writer_;