summaryrefslogtreecommitdiffstats
path: root/base/message_loop_proxy.h
Commit message (Collapse)AuthorAgeFilesLines
* Remove the rest of #pragma once in one big CL.ajwong@chromium.org2012-07-111-1/+0
| | | | | | | | | For context see this thread: https://groups.google.com/a/chromium.org/forum/?fromgroups#!topic/chromium-dev/RMcVNGjB4II TBR=thakis,pkasting,jam git-svn-id: svn://svn.chromium.org/chrome/trunk/src@146163 0039d316-1c4b-4281-b951-d872f2087c98
* Make new TaskRunner, SequencedTaskRunner, and SingleThreadTaskRunner interfacesakalin@chromium.org2012-02-151-117/+6
| | | | | | | | | | | | | | TaskRunner just has Post{,Delayed}Task(), SequencedTaskRunner extends Executor to have ordering guarantees and PostNonNestable{,Delayed}Task(), and SingleThreadTaskRunner extends SequencedTaskRunner and guarantees execution on a single thread. Move a bunch of methods from MessageLoopProxy into the TaskRunner classes and make it inherit from SingleThreadTaskRunner. BUG=110973 TEST= Review URL: https://chromiumcodereview.appspot.com/9169037 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@121999 0039d316-1c4b-4281-b951-d872f2087c98
* Remove task.h and finish base::Bind() migration.ajwong@chromium.org2012-01-061-1/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Over 341 CLs, in ~3 months, touching 3251 unique files! Top 5 most CLs: (121) jhawkins ( 45) dcheng ( 24) achuith ( 23) csilv ( 12) tfarina ( 12) groby ~1000 files touched: (918) jhawkins 100+ files touched: (486) ajwong (385) willchan (372) dcheng (126) csilv (123) fischman (112) sergeyu 49+ files touched: (65) tfarina (57) acolwell (52) adamk (49) tzik BUG=35223 TEST=existing Review URL: http://codereview.chromium.org/9114020 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@116748 0039d316-1c4b-4281-b951-d872f2087c98
* base::Bind: Remove Task.jhawkins@chromium.org2012-01-051-22/+3
| | | | | | | | | | BUG=none TEST=none R=awong Review URL: http://codereview.chromium.org/9086002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@116439 0039d316-1c4b-4281-b951-d872f2087c98
* Convert various ReleaseSoon methods to use base::Bind()dcheng@chromium.org2011-12-301-3/+9
| | | | | | | | | | BUG=none TEST=none TBR=brettw,atwilson Review URL: http://codereview.chromium.org/9022034 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@116030 0039d316-1c4b-4281-b951-d872f2087c98
* Replace MessageLoop::DeleteSoon implementation with one that uses base::Bind.dcheng@chromium.org2011-12-301-2/+9
| | | | | | | | | | | | BUG=none TEST=none TBR=willchan,brettw,tony Committed: http://src.chromium.org/viewvc/chrome?view=rev&revision=115997 Review URL: http://codereview.chromium.org/9004051 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@116026 0039d316-1c4b-4281-b951-d872f2087c98
* Revert 115997 - Replace MessageLoop::DeleteSoon implementation with one that ↵dcheng@chromium.org2011-12-291-9/+2
| | | | | | | | | | | | | | | uses base::Bind. BUG=none TEST=none TBR=willchan,brettw,tony Review URL: http://codereview.chromium.org/9004051 TBR=dcheng@chromium.org Review URL: http://codereview.chromium.org/9034029 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@115999 0039d316-1c4b-4281-b951-d872f2087c98
* Replace MessageLoop::DeleteSoon implementation with one that uses base::Bind.dcheng@chromium.org2011-12-291-2/+9
| | | | | | | | | | BUG=none TEST=none TBR=willchan,brettw,tony Review URL: http://codereview.chromium.org/9004051 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@115997 0039d316-1c4b-4281-b951-d872f2087c98
* callback_forward.h forward-declares base::Callback and base::Closure.erikwright@chromium.org2011-11-281-1/+1
| | | | | | | | | | | | | | This CL includes callback_forward.h and a number of files that depend on it. Other CLs have been sent to other reviewers, according to OWNERS files. This search shows the other CLs: http://goo.gl/vzQoJ See this chromium-dev thread for the rationale behind the change: http://goo.gl/I3kob BUG=None TEST=Compiles Review URL: http://codereview.chromium.org/8702019 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@111782 0039d316-1c4b-4281-b951-d872f2087c98
* Delete Tracked, and move Location to its own file.ajwong@chromium.org2011-09-211-0/+4
| | | | | | | | | | | | | The Birth/Death tracking of tasks has been moved out-of-band into MessageLoop's PendingTask structure. Thus, Task no longer needs to inherit from Tracked. Since Task was the only child of Tracked, delete the Tracked class and move Location to its own file. BUG=none TEST=builds Review URL: http://codereview.chromium.org/7879006 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@102132 0039d316-1c4b-4281-b951-d872f2087c98
* Fix comment for PostTaskAndReply().willchan@chromium.org2011-09-161-1/+1
| | | | | | | | | | BUG=none TEST=none Review URL: http://codereview.chromium.org/7922015 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@101598 0039d316-1c4b-4281-b951-d872f2087c98
* Implementation of PostTaskAndReply() in MessageLoopProxy and BrowserThread.ajwong@chromium.org2011-08-181-0/+45
| | | | | | | | | | | | | This ensures that the request/reply closures are always deleted on the origin thread, or leaked if the task cannot be completed (due to message loop shutdown). BUG=86301 TEST=new unittests Review URL: http://codereview.chromium.org/7210053 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@97387 0039d316-1c4b-4281-b951-d872f2087c98
* Add MessageLoopProxy::currentnduca@chromium.org2011-08-151-6/+9
| | | | | | Review URL: http://codereview.chromium.org/7583053 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@96819 0039d316-1c4b-4281-b951-d872f2087c98
* Rename BASE_API to BASE_EXPORT.darin@chromium.org2011-08-051-2/+2
| | | | | | | R=rvargas Review URL: http://codereview.chromium.org/7461141 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@95618 0039d316-1c4b-4281-b951-d872f2087c98
* Support Closure in ALL the loops!ajwong@chromium.org2011-07-261-1/+23
| | | | | | | | | | | | Add an overload for PostTask into MessageLoopProxy, and WorkerPool. BUG=35223 TEST=unittests. Review URL: http://codereview.chromium.org/7316015 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@94129 0039d316-1c4b-4281-b951-d872f2087c98
* Clarify documentation about when a task may fail to post to a message loopjoth@chromium.org2011-04-071-2/+4
| | | | | | | | | BUG=None TEST=still builds... Review URL: http://codereview.chromium.org/6812016 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@80794 0039d316-1c4b-4281-b951-d872f2087c98
* Move some files from base to base/memory.levin@chromium.org2011-03-281-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | raw_scoped_refptr_mismatch_checker.h ref_counted.cc ref_counted.h ref_counted_memory.cc ref_counted_memory.h ref_counted_unittest.cc scoped_callback_factory.h scoped_comptr_win.h scoped_handle.h scoped_native_library.cc scoped_native_library.h scoped_native_library_unittest.cc scoped_nsobject.h scoped_open_process.h scoped_ptr.h scoped_ptr_unittest.cc scoped_temp_dir.cc scoped_temp_dir.h scoped_temp_dir_unittest.cc scoped_vector.h singleton.h singleton_objc.h singleton_unittest.cc linked_ptr.h linked_ptr_unittest.cc weak_ptr.cc weak_ptr.h weak_ptr_unittest.cc BUG=None TEST=Compile Review URL: http://codereview.chromium.org/6714032 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@79524 0039d316-1c4b-4281-b951-d872f2087c98
* Base: A few more files using BASE_API (for base.dll)rvargas@google.com2011-03-251-2/+4
| | | | | | | | BUG=76996 TEST=none Review URL: http://codereview.chromium.org/6736019 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@79427 0039d316-1c4b-4281-b951-d872f2087c98
* Fix shutdown crash in CertVerifier by using a MessageLoopProxy.willchan@chromium.org2010-11-231-1/+2
| | | | | | | | | | | The CertVerifier is not getting Cancel()'d because something which owns it is getting leaked, most likely a URLRequestJob. Therefore, we can end up accessing a deleted MessageLoop on shutdown. MessageLoopProxy prevents accessing a deleted MessageLoop on shutdown, instead it just deletes the task, which isn't great, but it's better than crashing. We should fix the root cause eventually, which is a leak of the URLRequestJob. BUG=42275,chromium-os:8179 TEST=none Review URL: http://codereview.chromium.org/5347001 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@67172 0039d316-1c4b-4281-b951-d872f2087c98
* Revert "Revert "Const-ify RefCountedThreadSafe::AddRef and Release.""mpcomplete@chromium.org2010-10-221-2/+2
| | | | | | | | | chrome_frame failed to compile last time. I needed to add a "mutable" to a member variable in chrome_frame/metrics_service.cc. Review URL: http://codereview.chromium.org/3971004 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@63574 0039d316-1c4b-4281-b951-d872f2087c98
* Revert "Const-ify RefCountedThreadSafe::AddRef and Release."levin@chromium.org2010-10-221-2/+2
| | | | | | This reverts commit b7ce919957536ceb0cfac1709bc779fd086b6ce8. git-svn-id: svn://svn.chromium.org/chrome/trunk/src@63459 0039d316-1c4b-4281-b951-d872f2087c98
* Const-ify RefCountedThreadSafe::AddRef and Release.mpcomplete@chromium.org2010-10-221-2/+2
| | | | | | Review URL: http://codereview.chromium.org/3869003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@63457 0039d316-1c4b-4281-b951-d872f2087c98
* base: comment fixes onlyagl@chromium.org2010-10-111-4/+5
| | | | | | | TEST=none BUG=none git-svn-id: svn://svn.chromium.org/chrome/trunk/src@62144 0039d316-1c4b-4281-b951-d872f2087c98
* FBTF: Moves code to the headers.erg@google.com2010-09-281-4/+3
| | | | | | | | | | | | | One of the big things is starting to move/declare ctors/dtors that derive from RefCounted<> to/in the implementation file. (Saves 4 megabytes from libglue.a alone. 1 meg off libbrowser.a. Hundred of kilobyte savings in a large number of .a files; only libmedia.a grew and it's only 100k.) BUG=none TEST=compiles Review URL: http://codereview.chromium.org/3452030 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@60863 0039d316-1c4b-4281-b951-d872f2087c98
* `#pragma once` for app, base, chrome, gfx, ipc, net, skia, viewsthakis@chromium.org2010-07-261-0/+1
| | | | | | | | | BUG=50273 TEST=everything still builds, build is 10% faster on windows, same speed on mac/linux TBR: erg git-svn-id: svn://svn.chromium.org/chrome/trunk/src@53716 0039d316-1c4b-4281-b951-d872f2087c98
* Add virtual to some base classes that have virtual methodsjar@chromium.org2010-06-251-0/+3
| | | | | | | | | | This is defensive coding to avoid memory leaks. bug=47469 r=wtc Review URL: http://codereview.chromium.org/2869024 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@50907 0039d316-1c4b-4281-b951-d872f2087c98
* Created a stock implementation of the MessageLoopProxy interface than can be ↵sanjeevr@chromium.org2010-05-061-1/+27
| | | | | | | | | | | used to create an implementation that targets the current thread's message loop. BUG=None TEST=Unit tests provided. Review URL: http://codereview.chromium.org/1837003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@46591 0039d316-1c4b-4281-b951-d872f2087c98
* Changed UrlFetcher to use a MessageLoopProxy instead of directly relying on ↵sanjeevr@chromium.org2010-05-031-0/+3
| | | | | | | | | | | ChromeThread. This will allow us to make UrlFetcher independent of ChromeThread and we can then move it to chrome/common. BUG=None TEST=UrlFetcher unit-tests Review URL: http://codereview.chromium.org/1702016 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@46282 0039d316-1c4b-4281-b951-d872f2087c98
* Created a MessageLoopProxy interface. This provides a thread-safe refcounted ↵sanjeevr@chromium.org2010-04-291-0/+45
interface to the Post* methods of a message loop. This class can outlive the target message loop. Changed ChromeThread to vend an implementation of this proxy. BUG=None TEST=ChromeThread unit-tests modified. Review URL: http://codereview.chromium.org/1800008 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@45907 0039d316-1c4b-4281-b951-d872f2087c98