diff --git a/include/perfetto/ext/base/unix_task_runner.h b/include/perfetto/ext/base/unix_task_runner.h
index 8d1ab6d..ecde733 100644
--- a/include/perfetto/ext/base/unix_task_runner.h
+++ b/include/perfetto/ext/base/unix_task_runner.h
@@ -90,7 +90,7 @@
   void RunFileDescriptorWatch(PlatformHandle);
 
   ThreadChecker thread_checker_;
-  PlatformThreadId created_thread_id_ = GetThreadId();
+  std::atomic<PlatformThreadId> created_thread_id_ = GetThreadId();
 
   EventFd event_;
 
diff --git a/src/base/task_runner_unittest.cc b/src/base/task_runner_unittest.cc
index 934b8c0..810ebc6 100644
--- a/src/base/task_runner_unittest.cc
+++ b/src/base/task_runner_unittest.cc
@@ -343,6 +343,8 @@
     });
     second_tr.Run();
   });
+  main_tr.PostTask([&]() { main_tr.Quit(); });
+  main_tr.Run();
   thread.join();
 }
 
diff --git a/src/base/unix_task_runner.cc b/src/base/unix_task_runner.cc
index 9fc8f3c..ba2828f 100644
--- a/src/base/unix_task_runner.cc
+++ b/src/base/unix_task_runner.cc
@@ -52,7 +52,7 @@
 
 void UnixTaskRunner::Run() {
   PERFETTO_DCHECK_THREAD(thread_checker_);
-  created_thread_id_ = GetThreadId();
+  created_thread_id_.store(GetThreadId(), std::memory_order_relaxed);
   quit_ = false;
   for (;;) {
     int poll_timeout_ms;
@@ -299,7 +299,7 @@
 }
 
 bool UnixTaskRunner::RunsTasksOnCurrentThread() const {
-  return GetThreadId() == created_thread_id_;
+  return GetThreadId() == created_thread_id_.load(std::memory_order_relaxed);
 }
 
 }  // namespace base
