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

Issue 1423773003: Add SequencedTaskRunnerHandle to get a SequencedTaskRunner for the current thread / sequence. (Closed)

Created:
5 years, 2 months ago by Bernhard Bauer
Modified:
5 years, 1 month ago
Reviewers:
danakj, gab, Sami
CC:
chromium-reviews, vmpstr+watch_chromium.org, robliao
Base URL:
https://chromium.googlesource.com/chromium/src.git@master
Target Ref:
refs/pending/heads/master
Project:
chromium
Visibility:
Public.

Description

Add SequencedTaskRunnerHandle to get a SequencedTaskRunner for the current thread / sequence. BUG=546596 Committed: https://crrev.com/8a4087226c482fadb886585d97081adf379e6b68 Cr-Commit-Position: refs/heads/master@{#357067}

Patch Set 1 #

Patch Set 2 : . #

Total comments: 2

Patch Set 3 : review #

Total comments: 3

Patch Set 4 : add unittest #

Patch Set 5 : add comment #

Total comments: 2

Patch Set 6 : comment #

Total comments: 22

Patch Set 7 : review #

Patch Set 8 : review #

Patch Set 9 : export SequenceToken #

Total comments: 2
Unified diffs Side-by-side diffs Delta from patch set Stats (+264 lines, -19 lines) Patch
M base/BUILD.gn View 1 2 3 4 2 chunks +3 lines, -0 lines 0 comments Download
M base/base.gyp View 1 2 3 1 chunk +1 line, -0 lines 0 comments Download
M base/base.gypi View 1 chunk +2 lines, -0 lines 0 comments Download
M base/thread_task_runner_handle.h View 1 2 3 4 5 1 chunk +1 line, -0 lines 0 comments Download
A base/threading/sequenced_task_runner_handle.h View 1 2 3 1 chunk +36 lines, -0 lines 0 comments Download
A base/threading/sequenced_task_runner_handle.cc View 1 2 1 chunk +38 lines, -0 lines 2 comments Download
A base/threading/sequenced_task_runner_handle_unittest.cc View 1 2 3 4 5 6 1 chunk +81 lines, -0 lines 0 comments Download
M base/threading/sequenced_worker_pool.h View 1 2 3 4 5 6 7 8 3 chunks +13 lines, -5 lines 0 comments Download
M base/threading/sequenced_worker_pool.cc View 1 2 3 4 5 6 7 6 chunks +46 lines, -14 lines 0 comments Download
M base/threading/sequenced_worker_pool_unittest.cc View 1 2 3 4 5 6 7 1 chunk +43 lines, -0 lines 0 comments Download

Messages

Total messages: 47 (9 generated)
Sami
https://codereview.chromium.org/1423773003/diff/20001/base/threading/sequenced_task_runner_handle.h File base/threading/sequenced_task_runner_handle.h (right): https://codereview.chromium.org/1423773003/diff/20001/base/threading/sequenced_task_runner_handle.h#newcode25 base/threading/sequenced_task_runner_handle.h:25: static scoped_refptr<SequencedTaskRunner> Get(); Could this follow the same IsSet/Get ...
5 years, 2 months ago (2015-10-23 15:47:33 UTC) #2
gab
drive-by lgtm -- I think most users of ThreadTaskRunnerHandle should be using this instead (I ...
5 years, 2 months ago (2015-10-23 16:19:21 UTC) #4
Bernhard Bauer
https://codereview.chromium.org/1423773003/diff/20001/base/threading/sequenced_task_runner_handle.h File base/threading/sequenced_task_runner_handle.h (right): https://codereview.chromium.org/1423773003/diff/20001/base/threading/sequenced_task_runner_handle.h#newcode25 base/threading/sequenced_task_runner_handle.h:25: static scoped_refptr<SequencedTaskRunner> Get(); On 2015/10/23 15:47:33, Sami wrote: > ...
5 years, 2 months ago (2015-10-23 16:20:25 UTC) #5
Bernhard Bauer
On 2015/10/23 16:19:21, gab wrote: > drive-by lgtm -- I think most users of ThreadTaskRunnerHandle ...
5 years, 2 months ago (2015-10-23 16:24:00 UTC) #6
gab
On 2015/10/23 16:24:00, Bernhard Bauer wrote: > On 2015/10/23 16:19:21, gab wrote: > > drive-by ...
5 years, 2 months ago (2015-10-23 16:39:10 UTC) #7
Bernhard Bauer
On 2015/10/23 16:39:10, gab wrote: > On 2015/10/23 16:24:00, Bernhard Bauer wrote: > > On ...
5 years, 2 months ago (2015-10-23 16:54:49 UTC) #8
Bernhard Bauer
OK, let's do this 😃 Dana, please review.
5 years, 1 month ago (2015-10-26 14:08:31 UTC) #10
gab
On 2015/10/26 14:08:31, Bernhard Bauer wrote: > OK, let's do this 😃 Dana, please review. ...
5 years, 1 month ago (2015-10-26 19:23:28 UTC) #12
Bernhard Bauer
On 2015/10/26 19:23:28, gab wrote: > On 2015/10/26 14:08:31, Bernhard Bauer wrote: > > OK, ...
5 years, 1 month ago (2015-10-27 15:14:38 UTC) #13
gab
On 2015/10/27 15:14:38, Bernhard Bauer wrote: > On 2015/10/26 19:23:28, gab wrote: > > On ...
5 years, 1 month ago (2015-10-27 15:21:59 UTC) #14
Bernhard Bauer
On 2015/10/27 15:21:59, gab wrote: > On 2015/10/27 15:14:38, Bernhard Bauer wrote: > > On ...
5 years, 1 month ago (2015-10-27 16:35:12 UTC) #15
gab
https://codereview.chromium.org/1423773003/diff/80001/base/thread_task_runner_handle.h File base/thread_task_runner_handle.h (right): https://codereview.chromium.org/1423773003/diff/80001/base/thread_task_runner_handle.h#newcode22 base/thread_task_runner_handle.h:22: // posted tasks run after each other), use SequencedTaskRunnerHandle ...
5 years, 1 month ago (2015-10-27 16:57:58 UTC) #16
Bernhard Bauer
Dana, ping? https://codereview.chromium.org/1423773003/diff/80001/base/thread_task_runner_handle.h File base/thread_task_runner_handle.h (right): https://codereview.chromium.org/1423773003/diff/80001/base/thread_task_runner_handle.h#newcode22 base/thread_task_runner_handle.h:22: // posted tasks run after each other), ...
5 years, 1 month ago (2015-10-27 18:03:40 UTC) #17
danakj
https://codereview.chromium.org/1423773003/diff/100001/base/threading/sequenced_task_runner_handle_unittest.cc File base/threading/sequenced_task_runner_handle_unittest.cc (right): https://codereview.chromium.org/1423773003/diff/100001/base/threading/sequenced_task_runner_handle_unittest.cc#newcode62 base/threading/sequenced_task_runner_handle_unittest.cc:62: namespace { nit: you could wrap the whole file ...
5 years, 1 month ago (2015-10-27 20:03:20 UTC) #18
Bernhard Bauer
https://codereview.chromium.org/1423773003/diff/100001/base/threading/sequenced_task_runner_handle_unittest.cc File base/threading/sequenced_task_runner_handle_unittest.cc (right): https://codereview.chromium.org/1423773003/diff/100001/base/threading/sequenced_task_runner_handle_unittest.cc#newcode62 base/threading/sequenced_task_runner_handle_unittest.cc:62: namespace { On 2015/10/27 20:03:20, danakj wrote: > nit: ...
5 years, 1 month ago (2015-10-28 13:36:28 UTC) #19
danakj
https://codereview.chromium.org/1423773003/diff/100001/base/threading/sequenced_worker_pool.h File base/threading/sequenced_worker_pool.h (right): https://codereview.chromium.org/1423773003/diff/100001/base/threading/sequenced_worker_pool.h#newcode133 base/threading/sequenced_worker_pool.h:133: bool operator==(const SequenceToken& other) const { On 2015/10/28 13:36:28, ...
5 years, 1 month ago (2015-10-28 18:08:15 UTC) #20
Bernhard Bauer
https://codereview.chromium.org/1423773003/diff/100001/base/threading/sequenced_worker_pool.h File base/threading/sequenced_worker_pool.h (right): https://codereview.chromium.org/1423773003/diff/100001/base/threading/sequenced_worker_pool.h#newcode133 base/threading/sequenced_worker_pool.h:133: bool operator==(const SequenceToken& other) const { On 2015/10/28 18:08:15, ...
5 years, 1 month ago (2015-10-28 20:38:13 UTC) #21
danakj
LGTM
5 years, 1 month ago (2015-10-28 20:49:43 UTC) #22
Bernhard Bauer
On 2015/10/28 20:49:43, danakj wrote: > LGTM Thanks for the review!
5 years, 1 month ago (2015-10-28 20:54:48 UTC) #23
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1423773003/140001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1423773003/140001
5 years, 1 month ago (2015-10-28 20:56:54 UTC) #26
commit-bot: I haz the power
Try jobs failed on following builders: win_chromium_compile_dbg_ng on tryserver.chromium.win (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.win/builders/win_chromium_compile_dbg_ng/builds/101378)
5 years, 1 month ago (2015-10-28 22:12:02 UTC) #28
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1423773003/160001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1423773003/160001
5 years, 1 month ago (2015-10-30 09:01:48 UTC) #31
commit-bot: I haz the power
Committed patchset #9 (id:160001)
5 years, 1 month ago (2015-10-30 09:05:40 UTC) #32
commit-bot: I haz the power
Patchset 9 (id:??) landed as https://crrev.com/8a4087226c482fadb886585d97081adf379e6b68 Cr-Commit-Position: refs/heads/master@{#357067}
5 years, 1 month ago (2015-10-30 09:06:19 UTC) #33
gab
Just thought of something in the midst of the chromium-dev discussion. https://codereview.chromium.org/1423773003/diff/160001/base/threading/sequenced_task_runner_handle.cc File base/threading/sequenced_task_runner_handle.cc (right): ...
5 years, 1 month ago (2015-11-02 18:42:40 UTC) #34
danakj
https://codereview.chromium.org/1423773003/diff/160001/base/threading/sequenced_task_runner_handle.cc File base/threading/sequenced_task_runner_handle.cc (right): https://codereview.chromium.org/1423773003/diff/160001/base/threading/sequenced_task_runner_handle.cc#newcode22 base/threading/sequenced_task_runner_handle.cc:22: DCHECK(sequence_token.IsValid()); On 2015/11/02 18:42:40, gab wrote: > Actually, if ...
5 years, 1 month ago (2015-11-02 18:44:53 UTC) #35
gab
On 2015/11/02 18:44:53, danakj wrote: > https://codereview.chromium.org/1423773003/diff/160001/base/threading/sequenced_task_runner_handle.cc > File base/threading/sequenced_task_runner_handle.cc (right): > > https://codereview.chromium.org/1423773003/diff/160001/base/threading/sequenced_task_runner_handle.cc#newcode22 > ...
5 years, 1 month ago (2015-11-02 19:11:47 UTC) #36
danakj
On Mon, Nov 2, 2015 at 11:11 AM, <gab@chromium.org> wrote: > On 2015/11/02 18:44:53, danakj ...
5 years, 1 month ago (2015-11-02 21:51:38 UTC) #37
Bernhard Bauer
On 2015/11/02 21:51:38, danakj wrote: > On Mon, Nov 2, 2015 at 11:11 AM, <mailto:gab@chromium.org> ...
5 years, 1 month ago (2015-11-03 12:47:54 UTC) #38
gab
On 2015/11/03 12:47:54, Bernhard Bauer wrote: > On 2015/11/02 21:51:38, danakj wrote: > > On ...
5 years, 1 month ago (2015-11-03 22:22:33 UTC) #39
Bernhard Bauer
On 2015/11/03 22:22:33, gab wrote: > On 2015/11/03 12:47:54, Bernhard Bauer wrote: > > On ...
5 years, 1 month ago (2015-11-04 08:36:50 UTC) #40
Bernhard Bauer
On 2015/11/04 08:36:50, Bernhard Bauer wrote: > On 2015/11/03 22:22:33, gab wrote: > > On ...
5 years, 1 month ago (2015-11-04 08:37:52 UTC) #41
gab
On 2015/11/04 08:37:52, Bernhard Bauer wrote: > On 2015/11/04 08:36:50, Bernhard Bauer wrote: > > ...
5 years, 1 month ago (2015-11-04 18:57:43 UTC) #42
Bernhard Bauer
On 2015/11/04 18:57:43, gab wrote: > On 2015/11/04 08:37:52, Bernhard Bauer wrote: > > On ...
5 years, 1 month ago (2015-11-04 19:06:23 UTC) #43
danakj
On 2015/11/04 18:57:43, gab wrote: > On 2015/11/04 08:37:52, Bernhard Bauer wrote: > > On ...
5 years, 1 month ago (2015-11-04 19:08:05 UTC) #44
Bernhard Bauer
Yes, that would be the desired behavior, at least for my case. We could implement ...
5 years, 1 month ago (2015-11-04 19:19:24 UTC) #45
gab
@Dana: The single-thread version doesn't have this issue because posted task go into a queue ...
5 years, 1 month ago (2015-11-04 19:26:31 UTC) #46
Bernhard Bauer
5 years, 1 month ago (2015-11-05 18:07:11 UTC) #47
Message was sent while issue was closed.
On 2015/11/04 19:26:31, gab wrote:
> @Dana: The single-thread version doesn't have this issue because posted task
go
> into a queue which can only be processed after the current task is complete
> (whereas with the SequencedWorkerPool, they're immediately eligible to run if
> not on an active sequence).
> 
> @Bernhard: ShutdownBehaviour of the new sequence would inherit the
> ShutdownBehaviour of the unsequenced task IMO (individual tasks still have a
> ShutdownBehaviour even if not sequenced).

True! OK, I uploaded https://codereview.chromium.org/1414793009/ to continue the
discussion ☺ It's a bit unfinished (in particular missing comments and tests),
but it should give you an idea of what I'm planning.

Powered by Google App Engine
This is Rietveld 408576698