Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(431)

Side by Side Diff: cc/raster/tile_task.cc

Issue 1903733003: cc: Implement states for Task for stricter control. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@land_merge_tile_task_runner
Patch Set: feedback Created 4 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « cc/raster/task_graph_work_queue.cc ('k') | cc/raster/tile_task_worker_pool_perftest.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2014 The Chromium Authors. All rights reserved. 1 // Copyright 2014 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "cc/raster/tile_task.h" 5 #include "cc/raster/tile_task.h"
6 6
7 #include "base/logging.h" 7 #include "base/logging.h"
8 8
9 namespace cc { 9 namespace cc {
10 10
11 TileTask::TileTask(bool supports_concurrent_execution) 11 TileTask::TileTask(bool supports_concurrent_execution)
12 : supports_concurrent_execution_(supports_concurrent_execution), 12 : supports_concurrent_execution_(supports_concurrent_execution),
13 did_schedule_(false), 13 did_schedule_(false),
14 did_complete_(false) {} 14 did_complete_(false) {}
15 15
16 TileTask::TileTask(bool supports_concurrent_execution, 16 TileTask::TileTask(bool supports_concurrent_execution,
17 TileTask::Vector* dependencies) 17 TileTask::Vector* dependencies)
18 : supports_concurrent_execution_(supports_concurrent_execution), 18 : supports_concurrent_execution_(supports_concurrent_execution),
19 dependencies_(std::move(*dependencies)), 19 dependencies_(std::move(*dependencies)),
20 did_schedule_(false), 20 did_schedule_(false),
21 did_complete_(false) {} 21 did_complete_(false) {}
22 22
23 TileTask::~TileTask() { 23 TileTask::~TileTask() {
24 DCHECK(!did_schedule_); 24 DCHECK(!did_schedule_);
25 DCHECK(!did_run_ || did_complete_); 25 DCHECK(!state().IsFinished() || did_complete_);
26 } 26 }
27 27
28 void TileTask::WillSchedule() { 28 void TileTask::WillSchedule() {
29 DCHECK(!did_schedule_); 29 DCHECK(!did_schedule_);
30 } 30 }
31 31
32 void TileTask::DidSchedule() { 32 void TileTask::DidSchedule() {
33 did_schedule_ = true; 33 did_schedule_ = true;
34 did_complete_ = false; 34 did_complete_ = false;
35 } 35 }
(...skipping 11 matching lines...) Expand all
47 DCHECK(!did_complete_); 47 DCHECK(!did_complete_);
48 did_schedule_ = false; 48 did_schedule_ = false;
49 did_complete_ = true; 49 did_complete_ = true;
50 } 50 }
51 51
52 bool TileTask::HasCompleted() const { 52 bool TileTask::HasCompleted() const {
53 return did_complete_; 53 return did_complete_;
54 } 54 }
55 55
56 } // namespace cc 56 } // namespace cc
OLDNEW
« no previous file with comments | « cc/raster/task_graph_work_queue.cc ('k') | cc/raster/tile_task_worker_pool_perftest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698