| Index: base/test/sequenced_task_runner_test_template.cc
|
| ===================================================================
|
| --- base/test/sequenced_task_runner_test_template.cc (revision 183651)
|
| +++ base/test/sequenced_task_runner_test_template.cc (working copy)
|
| @@ -16,7 +16,10 @@
|
| : i(i), type(type) {
|
| }
|
|
|
| -SequencedTaskTracker::SequencedTaskTracker() : next_post_i_(0) {
|
| +SequencedTaskTracker::SequencedTaskTracker()
|
| + : next_post_i_(0),
|
| + task_end_count_(0),
|
| + task_end_cv_(&lock_) {
|
| }
|
|
|
| void SequencedTaskTracker::PostWrappedNonNestableTask(
|
| @@ -81,6 +84,8 @@
|
| void SequencedTaskTracker::TaskEnded(int i) {
|
| AutoLock lock(lock_);
|
| events_.push_back(TaskEvent(i, TaskEvent::END));
|
| + ++task_end_count_;
|
| + task_end_cv_.Signal();
|
| }
|
|
|
| const std::vector<TaskEvent>&
|
| @@ -88,6 +93,12 @@
|
| return events_;
|
| }
|
|
|
| +void SequencedTaskTracker::WaitForCountTasksToComplete(int count) {
|
| + AutoLock lock(lock_);
|
| + while (task_end_count_ < count)
|
| + task_end_cv_.Wait();
|
| +}
|
| +
|
| SequencedTaskTracker::~SequencedTaskTracker() {
|
| }
|
|
|
|
|