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

Unified Diff: cc/raster_worker_pool.cc

Issue 12217105: cc: Check for completed raster tasks at interval. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: confine polling to inside worker pool Created 7 years, 10 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 side-by-side diff with in-line comments
Download patch
« no previous file with comments | « cc/raster_worker_pool.h ('k') | cc/tile_manager.h » ('j') | cc/tile_manager.h » ('J')
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: cc/raster_worker_pool.cc
diff --git a/cc/raster_worker_pool.cc b/cc/raster_worker_pool.cc
index bc6e50e7084ad8c9e94ca42afe7b098b107a7f92..aa3df22e6526c9416e384db2ebf6f56c68a8cfc0 100644
--- a/cc/raster_worker_pool.cc
+++ b/cc/raster_worker_pool.cc
@@ -14,7 +14,7 @@ class RasterWorkerPoolTaskImpl : public internal::WorkerPoolTask {
public:
RasterWorkerPoolTaskImpl(PicturePileImpl* picture_pile,
const RasterWorkerPool::RasterCallback& task,
- const base::Closure& reply)
+ const base::Callback<void(bool)>& reply)
: internal::WorkerPoolTask(reply),
picture_pile_(picture_pile),
task_(task) {
@@ -23,6 +23,7 @@ class RasterWorkerPoolTaskImpl : public internal::WorkerPoolTask {
virtual void Run(RenderingStats* rendering_stats) OVERRIDE {
task_.Run(picture_pile_.get(), rendering_stats);
+ base::subtle::Release_Store(&completed_, 1);
}
private:
@@ -41,7 +42,7 @@ RasterWorkerPool::~RasterWorkerPool() {
void RasterWorkerPool::PostRasterTaskAndReply(PicturePileImpl* picture_pile,
const RasterCallback& task,
- const base::Closure& reply) {
+ const Reply& reply) {
Worker* worker = GetWorkerForNextTask();
scoped_refptr<PicturePileImpl> picture_pile_clone =
« no previous file with comments | « cc/raster_worker_pool.h ('k') | cc/tile_manager.h » ('j') | cc/tile_manager.h » ('J')

Powered by Google App Engine
This is Rietveld 408576698