summaryrefslogtreecommitdiffstats
path: root/chrome/renderer/render_thread.h
diff options
context:
space:
mode:
authordumi@chromium.org <dumi@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2010-08-20 22:19:38 +0000
committerdumi@chromium.org <dumi@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2010-08-20 22:19:38 +0000
commitc6a7b86c54d8b920943c97d990268ba1aee7b04b (patch)
tree9855910f1fa828374dc17d8ae375323d83cc4b1d /chrome/renderer/render_thread.h
parentcef8f4b2e19291efaacc00de6f6f36b46995d3cb (diff)
downloadchromium_src-c6a7b86c54d8b920943c97d990268ba1aee7b04b.zip
chromium_src-c6a7b86c54d8b920943c97d990268ba1aee7b04b.tar.gz
chromium_src-c6a7b86c54d8b920943c97d990268ba1aee7b04b.tar.bz2
Add a file thread to the renderer process.
BUG=none TEST=none Review URL: http://codereview.chromium.org/3151029 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@56917 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/renderer/render_thread.h')
-rw-r--r--chrome/renderer/render_thread.h13
1 files changed, 13 insertions, 0 deletions
diff --git a/chrome/renderer/render_thread.h b/chrome/renderer/render_thread.h
index 19679cf3..308bb17 100644
--- a/chrome/renderer/render_thread.h
+++ b/chrome/renderer/render_thread.h
@@ -46,6 +46,11 @@ struct ViewMsg_ExtensionExtentsUpdated_Params;
struct ViewMsg_New_Params;
struct WebPreferences;
+namespace base {
+class MessageLoopProxy;
+class Thread;
+}
+
namespace IPC {
struct ChannelHandle;
}
@@ -227,6 +232,11 @@ class RenderThread : public RenderThreadBase,
std::string GetExtensionIdByBrowseExtent(const GURL& url);
+ // Returns a MessageLoopProxy instance corresponding to the message loop
+ // of the thread on which file operations should be run. Must be called
+ // on the renderer's main thread.
+ scoped_refptr<base::MessageLoopProxy> GetFileThreadMessageLoopProxy();
+
private:
virtual void OnControlMessageReceived(const IPC::Message& msg);
@@ -365,6 +375,9 @@ class RenderThread : public RenderThreadBase,
struct ExtensionInfo;
std::vector<ExtensionInfo> extension_extents_;
+ // A lazily initiated thread on which file operations are run.
+ scoped_ptr<base::Thread> file_thread_;
+
DISALLOW_COPY_AND_ASSIGN(RenderThread);
};