Index: base/synchronization/cancellation_flag.h |
diff --git a/base/synchronization/cancellation_flag.h b/base/synchronization/cancellation_flag.h |
index f2f83f47dadd651542ad3f65f8101b77a86fc8eb..2f7a0c8e2d66edc870f25bf0f24d648c7ef6ffa1 100644 |
--- a/base/synchronization/cancellation_flag.h |
+++ b/base/synchronization/cancellation_flag.h |
@@ -5,44 +5,13 @@ |
#ifndef BASE_SYNCHRONIZATION_CANCELLATION_FLAG_H_ |
#define BASE_SYNCHRONIZATION_CANCELLATION_FLAG_H_ |
-#include "base/atomicops.h" |
-#include "base/base_export.h" |
-#include "base/macros.h" |
-#include "base/threading/platform_thread.h" |
+#include "base/synchronization/atomic_flag.h" |
namespace base { |
-// CancellationFlag allows one thread to cancel jobs executed on some worker |
-// thread. Calling Set() from one thread and IsSet() from a number of threads |
-// is thread-safe. |
-// |
-// This class IS NOT intended for synchronization between threads. |
-class BASE_EXPORT CancellationFlag { |
- public: |
- CancellationFlag() : flag_(false) { |
-#if !defined(NDEBUG) |
- set_on_ = PlatformThread::CurrentId(); |
-#endif |
- } |
- ~CancellationFlag() {} |
- |
- // Set the flag. May only be called on the thread which owns the object. |
- void Set(); |
- bool IsSet() const; // Returns true iff the flag was set. |
- |
- // For subtle reasons that may be different on different architectures, |
- // a different thread testing IsSet() may erroneously read 'true' after |
- // this method has been called. |
- void UnsafeResetForTesting(); |
- |
- private: |
- base::subtle::Atomic32 flag_; |
-#if !defined(NDEBUG) |
- PlatformThreadId set_on_; |
-#endif |
- |
- DISALLOW_COPY_AND_ASSIGN(CancellationFlag); |
-}; |
+// Use inheritance instead of "using" to allow forward declaration of "class |
+// CancellationFlag". |
+class CancellationFlag : public AtomicFlag {}; |
danakj
2016/07/20 19:21:01
Are you going to rename the rest in another CL and
fdoray
2016/07/21 13:08:33
Done.
|
} // namespace base |