Remove inter-thread synchronous function calls in WorkerWebSocketChannel |
||
Issue descriptionThis should be necessary to unblock a worker thread and make sure to run closing sequence on it before termination.
,
Aug 24 2016
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/9fe7a2928edbd26896aa187deeead6b7509e3df1 commit 9fe7a2928edbd26896aa187deeead6b7509e3df1 Author: nhiroki <nhiroki@chromium.org> Date: Wed Aug 24 06:33:51 2016 WebSocket: Consolidate inter-thread synchronous function calls Bridge::initialize() should be merged into Bridge::connect() so that we can reduce the number of inter-thread synchronous function calls. BUG= 640088 Review-Url: https://codereview.chromium.org/2270693002 Cr-Commit-Position: refs/heads/master@{#413997} [modify] https://crrev.com/9fe7a2928edbd26896aa187deeead6b7509e3df1/third_party/WebKit/Source/modules/websockets/WorkerWebSocketChannel.cpp [modify] https://crrev.com/9fe7a2928edbd26896aa187deeead6b7509e3df1/third_party/WebKit/Source/modules/websockets/WorkerWebSocketChannel.h
,
Aug 24 2016
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/70a476ad4428cd7ca9bfa0fc69fda3deff7268fb commit 70a476ad4428cd7ca9bfa0fc69fda3deff7268fb Author: nhiroki <nhiroki@chromium.org> Date: Wed Aug 24 10:29:50 2016 WebSocket: Stop Bridge::disconnect() from waiting until Peer::disconnect() is complete Bridge::disconnect() on a worker thread waited until Peer::disconnect() is complete on the main thread to make sure that Peer never dereferences a pointer to Bridge after disconnection. However, in the current implementation, the pointer is CrossThreadWeakPersistent and its existence is appropriately checked before access[1], so Bridge::disconnect() no longer have to wait until it's nullified on Peer::disconnect(). [1] https://codereview.chromium.org/2123703002 BUG= 639153 , 640088 Review-Url: https://codereview.chromium.org/2271133002 Cr-Commit-Position: refs/heads/master@{#414040} [modify] https://crrev.com/70a476ad4428cd7ca9bfa0fc69fda3deff7268fb/third_party/WebKit/Source/modules/websockets/WorkerWebSocketChannel.cpp [modify] https://crrev.com/70a476ad4428cd7ca9bfa0fc69fda3deff7268fb/third_party/WebKit/Source/modules/websockets/WorkerWebSocketChannel.h
,
Aug 24 2016
CLs on c#2,3 eliminated the reason to signal on Peer::contextDestroyed. |
||
►
Sign in to add a comment |
||
Comment 1 by nhiroki@chromium.org
, Aug 23 2016