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

Unified Diff: content/child/blink_platform_impl.cc

Issue 1449953002: compositor-worker: Refactor CompositorWorkerManager (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 5 years, 1 month 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
Index: content/child/blink_platform_impl.cc
diff --git a/content/child/blink_platform_impl.cc b/content/child/blink_platform_impl.cc
index ca621267cf83df6204699d1f2ef338b7ebf54f5c..652a73d6b81a91c3e1aa572f366ac44fbf1d3628 100644
--- a/content/child/blink_platform_impl.cc
+++ b/content/child/blink_platform_impl.cc
@@ -25,6 +25,7 @@
#include "base/sys_info.h"
#include "base/thread_task_runner_handle.h"
#include "base/threading/platform_thread.h"
+#include "base/threading/thread.h"
#include "base/time/time.h"
#include "base/trace_event/memory_allocator_dump_guid.h"
#include "base/trace_event/memory_dump_manager.h"
@@ -442,7 +443,8 @@ BlinkPlatformImpl::BlinkPlatformImpl()
BlinkPlatformImpl::BlinkPlatformImpl(
scoped_refptr<base::SingleThreadTaskRunner> main_thread_task_runner)
- : main_thread_task_runner_(main_thread_task_runner) {
+ : main_thread_task_runner_(main_thread_task_runner),
+ compositor_thread_(nullptr) {
InternalInit();
}
@@ -529,14 +531,29 @@ bool BlinkPlatformImpl::portAllowed(const blink::WebURL& url) const {
}
blink::WebThread* BlinkPlatformImpl::createThread(const char* name) {
+ base::Thread::Options options;
scheduler::WebThreadImplForWorkerScheduler* thread =
- new scheduler::WebThreadImplForWorkerScheduler(name);
+ new scheduler::WebThreadImplForWorkerScheduler(name, options);
thread->TaskRunner()->PostTask(
FROM_HERE, base::Bind(&BlinkPlatformImpl::UpdateWebThreadTLS,
base::Unretained(this), thread));
return thread;
}
+blink::WebThread* BlinkPlatformImpl::createThreadForCompositor(
+ const char* name) {
+ base::Thread::Options options;
sadrul 2015/11/27 19:03:07 DCHECK(!compositor_thread_)?
Ian Vollick 2015/11/27 19:56:11 Done.
+#if defined(OS_ANDROID)
+ options.priority = base::ThreadPriority::DISPLAY;
+#endif
+ compositor_thread_ =
+ new scheduler::WebThreadImplForWorkerScheduler(name, options);
+ compositor_thread_->TaskRunner()->PostTask(
+ FROM_HERE, base::Bind(&BlinkPlatformImpl::UpdateWebThreadTLS,
+ base::Unretained(this), compositor_thread_));
+ return compositor_thread_;
+}
+
blink::WebThread* BlinkPlatformImpl::currentThread() {
return static_cast<blink::WebThread*>(current_thread_slot_.Get());
}
@@ -1089,6 +1106,10 @@ void BlinkPlatformImpl::cryptographicallyRandomValues(
base::RandBytes(buffer, length);
}
+blink::WebThread* BlinkPlatformImpl::compositorThread() const {
+ return compositor_thread_;
+}
+
blink::WebGestureCurve* BlinkPlatformImpl::createFlingAnimationCurve(
blink::WebGestureDevice device_source,
const blink::WebFloatPoint& velocity,

Powered by Google App Engine
This is Rietveld 408576698