| Index: base/threading/sequenced_worker_pool.h
|
| diff --git a/base/threading/sequenced_worker_pool.h b/base/threading/sequenced_worker_pool.h
|
| index de318287b3796880cabb4af0dd76cef07ceb16af..e86814d2ad41a8d4b508d27a3bb02c862ddb5c2a 100644
|
| --- a/base/threading/sequenced_worker_pool.h
|
| +++ b/base/threading/sequenced_worker_pool.h
|
| @@ -22,6 +22,10 @@ class Location;
|
|
|
| namespace base {
|
|
|
| +class MessageLoopProxy;
|
| +
|
| +template <class T> class DeleteHelper;
|
| +
|
| // A worker thread pool that enforces ordering between sets of tasks. It also
|
| // allows you to specify what should happen to your tasks on shutdown.
|
| //
|
| @@ -119,6 +123,7 @@ class BASE_EXPORT SequencedWorkerPool : public TaskRunner {
|
| public:
|
| virtual ~TestingObserver() {}
|
| virtual void WillWaitForShutdown() = 0;
|
| + virtual void OnDestruct() = 0;
|
| };
|
|
|
| // Pass the maximum number of threads (they will be lazily created as needed)
|
| @@ -225,14 +230,19 @@ class BASE_EXPORT SequencedWorkerPool : public TaskRunner {
|
| protected:
|
| virtual ~SequencedWorkerPool();
|
|
|
| + virtual void OnDestruct() const OVERRIDE;
|
| +
|
| private:
|
| friend class RefCountedThreadSafe<SequencedWorkerPool>;
|
| + friend class DeleteHelper<SequencedWorkerPool>;
|
|
|
| class Inner;
|
| class Worker;
|
|
|
| - // Avoid pulling in too many headers by putting everything into
|
| - // |inner_|.
|
| + const scoped_refptr<MessageLoopProxy> constructor_message_loop_;
|
| +
|
| + // Avoid pulling in too many headers by putting (almost) everything
|
| + // into |inner_|.
|
| const scoped_ptr<Inner> inner_;
|
|
|
| DISALLOW_COPY_AND_ASSIGN(SequencedWorkerPool);
|
|
|