summaryrefslogtreecommitdiffstats
path: root/remoting/host/chromoting_host_context.cc
diff options
context:
space:
mode:
authorsergeyu@chromium.org <sergeyu@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2012-07-26 17:45:49 +0000
committersergeyu@chromium.org <sergeyu@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2012-07-26 17:45:49 +0000
commitc2c28ac4560a58a4ff7e86d00e55e55e9df0a15d (patch)
tree1da78d566b4a17c3c0b65995e4dffaee62686521 /remoting/host/chromoting_host_context.cc
parent6a1a59a1fe996029e2dda0dc8592257f9fa0408b (diff)
downloadchromium_src-c2c28ac4560a58a4ff7e86d00e55e55e9df0a15d.zip
chromium_src-c2c28ac4560a58a4ff7e86d00e55e55e9df0a15d.tar.gz
chromium_src-c2c28ac4560a58a4ff7e86d00e55e55e9df0a15d.tar.bz2
Revert 148418 - Always use chromium threads for IO in remoting host
BUG=137140 Review URL: https://chromiumcodereview.appspot.com/10808094 TBR=sergeyu@chromium.org Review URL: https://chromiumcodereview.appspot.com/10829040 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@148578 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'remoting/host/chromoting_host_context.cc')
-rw-r--r--remoting/host/chromoting_host_context.cc23
1 files changed, 16 insertions, 7 deletions
diff --git a/remoting/host/chromoting_host_context.cc b/remoting/host/chromoting_host_context.cc
index 480de73..6c251fa 100644
--- a/remoting/host/chromoting_host_context.cc
+++ b/remoting/host/chromoting_host_context.cc
@@ -9,15 +9,16 @@
#include "base/bind.h"
#include "base/threading/thread.h"
#include "remoting/host/url_request_context.h"
+#include "remoting/jingle_glue/jingle_thread.h"
namespace remoting {
ChromotingHostContext::ChromotingHostContext(
scoped_refptr<base::SingleThreadTaskRunner> ui_task_runner)
- : network_thread_("ChromotingNetworkThread"),
- capture_thread_("ChromotingCaptureThread"),
+ : capture_thread_("ChromotingCaptureThread"),
encode_thread_("ChromotingEncodeThread"),
desktop_thread_("ChromotingDesktopThread"),
+ io_thread_("ChromotingIOThread"),
file_thread_("ChromotingFileIOThread"),
ui_task_runner_(ui_task_runner) {
}
@@ -28,20 +29,24 @@ ChromotingHostContext::~ChromotingHostContext() {
bool ChromotingHostContext::Start() {
// Start all the threads.
bool started = capture_thread_.Start() && encode_thread_.Start() &&
- network_thread_.StartWithOptions(base::Thread::Options(
- MessageLoop::TYPE_IO, 0)) &&
- desktop_thread_.Start() &&
+ jingle_thread_.Start() && desktop_thread_.Start() &&
+ io_thread_.StartWithOptions(
+ base::Thread::Options(MessageLoop::TYPE_IO, 0)) &&
file_thread_.StartWithOptions(
base::Thread::Options(MessageLoop::TYPE_IO, 0));
if (!started)
return false;
url_request_context_getter_ = new URLRequestContextGetter(
- ui_task_runner(), network_task_runner(),
+ ui_task_runner(), io_task_runner(),
static_cast<MessageLoopForIO*>(file_thread_.message_loop()));
return true;
}
+JingleThread* ChromotingHostContext::jingle_thread() {
+ return &jingle_thread_;
+}
+
base::SingleThreadTaskRunner* ChromotingHostContext::capture_task_runner() {
return capture_thread_.message_loop_proxy();
}
@@ -51,7 +56,7 @@ base::SingleThreadTaskRunner* ChromotingHostContext::encode_task_runner() {
}
base::SingleThreadTaskRunner* ChromotingHostContext::network_task_runner() {
- return network_thread_.message_loop_proxy();
+ return jingle_thread_.message_loop_proxy();
}
base::SingleThreadTaskRunner* ChromotingHostContext::desktop_task_runner() {
@@ -62,6 +67,10 @@ base::SingleThreadTaskRunner* ChromotingHostContext::ui_task_runner() {
return ui_task_runner_;
}
+base::SingleThreadTaskRunner* ChromotingHostContext::io_task_runner() {
+ return io_thread_.message_loop_proxy();
+}
+
base::SingleThreadTaskRunner* ChromotingHostContext::file_task_runner() {
return file_thread_.message_loop_proxy();
}