| Index: base/win/object_watcher.h
|
| diff --git a/base/win/object_watcher.h b/base/win/object_watcher.h
|
| index a2821c114f18279a5cc4c9b57d77d23cfd35439f..67a1e26c76cd1665b700f896075777d4c66abe58 100644
|
| --- a/base/win/object_watcher.h
|
| +++ b/base/win/object_watcher.h
|
| @@ -12,7 +12,7 @@
|
| #include "base/macros.h"
|
| #include "base/memory/ref_counted.h"
|
| #include "base/memory/weak_ptr.h"
|
| -#include "base/single_thread_task_runner.h"
|
| +#include "base/sequenced_task_runner.h"
|
|
|
| namespace base {
|
| namespace win {
|
| @@ -20,7 +20,7 @@ namespace win {
|
| // A class that provides a means to asynchronously wait for a Windows object to
|
| // become signaled. It is an abstraction around RegisterWaitForSingleObject
|
| // that provides a notification callback, OnObjectSignaled, that runs back on
|
| -// the origin thread (i.e., the thread that called StartWatching).
|
| +// the origin sequence (i.e., the sequence that called StartWatching).
|
| //
|
| // This class acts like a smart pointer such that when it goes out-of-scope,
|
| // UnregisterWaitEx is automatically called, and any in-flight notification is
|
| @@ -48,14 +48,13 @@ namespace win {
|
| // still called after (but not necessarily immediately after) watch is started.
|
| //
|
| // NOTE: Except for the constructor, all public methods of this class must be
|
| -// called on the same thread. A ThreadTaskRunnerHandle must be set on that
|
| -// thread.
|
| +// called in sequence, in a scope where SequencedTaskRunnerHandle::IsSet().
|
| class BASE_EXPORT ObjectWatcher {
|
| public:
|
| class BASE_EXPORT Delegate {
|
| public:
|
| virtual ~Delegate() {}
|
| - // Called from the thread that started the watch when a signaled object is
|
| + // Called from the sequence that started the watch when a signaled object is
|
| // detected. To continue watching the object, StartWatching must be called
|
| // again.
|
| virtual void OnObjectSignaled(HANDLE object) = 0;
|
| @@ -64,16 +63,16 @@ class BASE_EXPORT ObjectWatcher {
|
| ObjectWatcher();
|
| ~ObjectWatcher();
|
|
|
| - // When the object is signaled, the given delegate is notified on the thread
|
| + // When the object is signaled, the given delegate is notified on the sequence
|
| // where StartWatchingOnce is called. The ObjectWatcher is not responsible for
|
| // deleting the delegate.
|
| // Returns whether watching was successfully initiated.
|
| bool StartWatchingOnce(HANDLE object, Delegate* delegate);
|
|
|
| - // Notifies the delegate, on the thread where this method is called, each time
|
| - // the object is set. By definition, the handle must be an auto-reset object.
|
| - // The caller must ensure that it (or any Windows system code) doesn't reset
|
| - // the event or else the delegate won't be called.
|
| + // Notifies the delegate, on the sequence where this method is called, each
|
| + // time the object is set. By definition, the handle must be an auto-reset
|
| + // object. The caller must ensure that it (or any Windows system code) doesn't
|
| + // reset the event or else the delegate won't be called.
|
| // Returns whether watching was successfully initiated.
|
| bool StartWatchingMultipleTimes(HANDLE object, Delegate* delegate);
|
|
|
| @@ -112,8 +111,8 @@ class BASE_EXPORT ObjectWatcher {
|
| // The wait handle returned by RegisterWaitForSingleObject.
|
| HANDLE wait_object_ = nullptr;
|
|
|
| - // The task runner of the thread on which the watch was started.
|
| - scoped_refptr<SingleThreadTaskRunner> task_runner_;
|
| + // The task runner of the sequence on which the watch was started.
|
| + scoped_refptr<SequencedTaskRunner> task_runner_;
|
|
|
| bool run_once_ = true;
|
|
|
|
|