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

Issue 19661004: Made MessagePump a non-thread safe class. (Closed)

Created:
7 years, 5 months ago by alexeypa (please no reviews)
Modified:
7 years, 5 months ago
CC:
chromium-reviews, feature-media-reviews_chromium.org, cbentzel+watch_chromium.org, erikwright+watch_chromium.org, sadrul, mmenke
Visibility:
Public.

Description

Made MessagePump a non-thread safe class. This CL makes MessagePump a non-thread safe class to make sure thread-bound resources (such as the UI window used for pumping messages on Windows) are freed on the correct thread. Handling of incoming tasks and synchronization between different threads was moved out to a separate class - IncomingTaskQueue reducing the number of locks to be taken while posting a task to one. Posting tasks via both MessageLoop and MessageLoopProxyImpl is now routed via IncomingTaskQueue. TBR all reviewers from https://chromiumcodereview.appspot.com/17567007/ because this is a re-land of it with a mechanical fix (adding a missing header). TBR=rsesek@chromium.org,darin@chromium.org,thakis@chromium.org,rvargas@chromium.org,dalecurtis@chromium.org BUG=241939 Committed: https://src.chromium.org/viewvc/chrome?view=rev&revision=212987

Patch Set 1 #

Patch Set 2 : Adding a missing header. #

Unified diffs Side-by-side diffs Delta from patch set Stats (+492 lines, -405 lines) Patch
M base/base.gypi View 1 chunk +2 lines, -0 lines 0 comments Download
A base/message_loop/incoming_task_queue.h View 1 chunk +104 lines, -0 lines 0 comments Download
A base/message_loop/incoming_task_queue.cc View 1 chunk +169 lines, -0 lines 0 comments Download
M base/message_loop/message_loop.h View 8 chunks +42 lines, -61 lines 0 comments Download
M base/message_loop/message_loop.cc View 13 chunks +51 lines, -150 lines 0 comments Download
M base/message_loop/message_loop_proxy_impl.h View 2 chunks +16 lines, -25 lines 0 comments Download
M base/message_loop/message_loop_proxy_impl.cc View 1 chunk +15 lines, -53 lines 0 comments Download
M base/message_loop/message_loop_unittest.cc View 5 chunks +9 lines, -21 lines 0 comments Download
M base/message_loop/message_pump.h View 3 chunks +3 lines, -6 lines 0 comments Download
M base/message_loop/message_pump_android.h View 2 chunks +1 line, -3 lines 0 comments Download
M base/message_loop/message_pump_aurax11.h View 2 chunks +1 line, -3 lines 0 comments Download
M base/message_loop/message_pump_aurax11.cc View 2 chunks +7 lines, -7 lines 0 comments Download
M base/message_loop/message_pump_default.h View 2 chunks +1 line, -3 lines 0 comments Download
M base/message_loop/message_pump_default.cc View 1 chunk +3 lines, -0 lines 0 comments Download
M base/message_loop/message_pump_glib.h View 2 chunks +1 line, -2 lines 0 comments Download
M base/message_loop/message_pump_glib.cc View 2 chunks +7 lines, -7 lines 0 comments Download
M base/message_loop/message_pump_gtk.h View 2 chunks +1 line, -3 lines 0 comments Download
M base/message_loop/message_pump_gtk.cc View 2 chunks +5 lines, -5 lines 0 comments Download
M base/message_loop/message_pump_io_ios.h View 6 chunks +7 lines, -6 lines 0 comments Download
M base/message_loop/message_pump_io_ios.cc View 5 chunks +7 lines, -6 lines 0 comments Download
M base/message_loop/message_pump_io_ios_unittest.cc View 3 chunks +5 lines, -5 lines 0 comments Download
M base/message_loop/message_pump_libevent.h View 2 chunks +1 line, -3 lines 0 comments Download
M base/message_loop/message_pump_libevent_unittest.cc View 2 chunks +2 lines, -2 lines 0 comments Download
M base/message_loop/message_pump_mac.h View 1 9 chunks +8 lines, -16 lines 0 comments Download
M base/message_loop/message_pump_mac.mm View 1 chunk +3 lines, -0 lines 0 comments Download
M base/message_loop/message_pump_ozone.h View 2 chunks +1 line, -1 line 0 comments Download
M base/test/test_support_android.cc View 2 chunks +2 lines, -3 lines 0 comments Download
M chrome/browser/ui/cocoa/browser/avatar_menu_bubble_controller_unittest.mm View 3 chunks +4 lines, -3 lines 0 comments Download
M chrome/browser/ui/cocoa/constrained_window/constrained_window_animation_unittest.mm View 3 chunks +3 lines, -2 lines 0 comments Download
M chrome/browser/ui/cocoa/history_overlay_controller_unittest.mm View 3 chunks +4 lines, -3 lines 0 comments Download
M chrome/browser/ui/cocoa/run_loop_testing.mm View 2 chunks +2 lines, -1 line 0 comments Download
M media/base/pipeline_unittest.cc View 1 chunk +2 lines, -2 lines 0 comments Download
M net/dns/dns_transaction_unittest.cc View 1 chunk +1 line, -1 line 0 comments Download
M net/dns/serial_worker_unittest.cc View 2 chunks +2 lines, -2 lines 0 comments Download

Messages

Total messages: 3 (0 generated)
alexeypa (please no reviews)
I'm going to TBR this one. It is a mechanical fix (adding a missing header) ...
7 years, 5 months ago (2013-07-22 21:08:52 UTC) #1
alexeypa (please no reviews)
Committed patchset #2 manually as r212987 (presubmit successful).
7 years, 5 months ago (2013-07-22 22:24:41 UTC) #2
darin (slow to review)
7 years, 5 months ago (2013-07-23 16:29:43 UTC) #3
Message was sent while issue was closed.
LGTM

Powered by Google App Engine
This is Rietveld 408576698