- 08 May, 2019 1 commit
-
-
Peter Marshall authored
This is needed for Perfetto which sometimes chooses to bypass the task queue if the task queue uses a given thread to run tasks. Bug: v8:8339 Change-Id: Iecec5e7883d174e4b63495ecdadfb96105e4505c Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1588471 Commit-Queue: Peter Marshall <petermarshall@chromium.org> Reviewed-by:
Ulan Degenbaev <ulan@chromium.org> Auto-Submit: Peter Marshall <petermarshall@chromium.org> Cr-Commit-Position: refs/heads/master@{#61316}
-
- 19 Mar, 2019 1 commit
-
-
Peter Marshall authored
This was unimplemented but is needed for Perfetto which posts delayed tasks on worker threads e.g. drain the trace buffer into a file every x seconds. This is implemented by adding a second queue which holds the delayed tasks in chronological order of 'next-to-execute'. We use an std::multimap for the queue so that we can easily get the next delayed task with begin(). The implementation will move delayed tasks into the main task queue when their deadline expires. Drive-by cleanup of the runner destructor which can just use = default. Bug: v8:8339 Change-Id: I3629c5d6e15ced2fc47eb1b7519a2dbbf8461fce Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1521114 Commit-Queue: Peter Marshall <petermarshall@chromium.org> Reviewed-by:
Ulan Degenbaev <ulan@chromium.org> Cr-Commit-Position: refs/heads/master@{#60320}
-
- 14 Sep, 2018 1 commit
-
-
Florian Sattler authored
Fixing clang-tidy warning. Bug: v8:8015 Change-Id: I85fc4ba0e4188d60d15e389e4682541c65324b55 Reviewed-on: https://chromium-review.googlesource.com/1227071 Commit-Queue: Florian Sattler <sattlerf@google.com> Reviewed-by:
Leszek Swirski <leszeks@chromium.org> Cr-Commit-Position: refs/heads/master@{#55920}
-
- 26 Mar, 2018 1 commit
-
-
Gabriel Charette authored
This is done now while embedders have yet to adapt to the new API before it becomes hard to migrate. Also renamed variable/methods to use "worker threads" rather than "background" nomenclature. Extracted from https://chromium-review.googlesource.com/c/v8/v8/+/978443/7 while resolving the more contentious bits around using task runners. TBR=rmcilroy@chromium.org Bug: chromium:817421 Cq-Include-Trybots: luci.chromium.try:linux_chromium_rel_ng Change-Id: Ie3ddf15a708e829c0f718d89bebf3e96d1990c16 Reviewed-on: https://chromium-review.googlesource.com/980953 Commit-Queue: Gabriel Charette <gab@chromium.org> Reviewed-by:
Gabriel Charette <gab@chromium.org> Cr-Commit-Position: refs/heads/master@{#52231}
-
- 15 Nov, 2017 1 commit
-
-
Andreas Haas authored
There was a data race in the access of the foreground_task_runner_map_. I protect each access to foreground_task_runner_map_ with a lock now. Original change's description: > [platform] Implement TaskRunners in the DefaultPlatform > > This CL implements the TaskRunners in the DefaultPlatform which has been > added recently to the platform API. In addition I changed how task > posting works on the DefaultPlatform. > > With this implementation the DefaultPlatform keeps one > DefaultForegroundTaskRunner per isolate, plus one > DefaultBackgroundTaskRunner. The DefaultPlatform owns these TaskRunners > with a shared_ptr, which is also shared with any caller of > GetForegroundTaskRunner or GetBackgroundTaskrunner. > > This CL moves the task management from the DefaultPlatform to the > TaskRunners. The DefaultForegroundTaskRunner owns and manages the the > task queue, the delayed task queue, and the idle task queue. The > DefaultBackgroundTaskRunner owns the WorkerThread pool and the > background task queue. > > In addition changed many Task* to std::unique_ptr<Task> to document task > ownership. > > R=rmcilroy@chromium.org > > Change-Id: Ib9a01f1f45e5b48844a37d801f884210ec3f6c27 > Reviewed-on: https://chromium-review.googlesource.com/753583 > Commit-Queue: Andreas Haas <ahaas@chromium.org> > Reviewed-by: Ross McIlroy <rmcilroy@chromium.org> > Cr-Commit-Position: refs/heads/master@{#49354} Change-Id: Iddccdb07bde1a799815ec6ed6af37082df4987c7 Reviewed-on: https://chromium-review.googlesource.com/770970 Commit-Queue: Andreas Haas <ahaas@chromium.org> Reviewed-by:
Andreas Haas <ahaas@chromium.org> Reviewed-by:
Ross McIlroy <rmcilroy@chromium.org> Cr-Commit-Position: refs/heads/master@{#49379}
-
- 14 Nov, 2017 2 commits
-
-
Michael Achenbach authored
This reverts commit 8de2e6db. Reason for revert: Suspect for: https://build.chromium.org/p/client.v8/builders/V8%20Win32%20-%20nosnap%20-%20shared/builds/24237 https://build.chromium.org/p/client.v8/builders/V8%20Win64/builds/20896 Original change's description: > [platform] Implement TaskRunners in the DefaultPlatform > > This CL implements the TaskRunners in the DefaultPlatform which has been > added recently to the platform API. In addition I changed how task > posting works on the DefaultPlatform. > > With this implementation the DefaultPlatform keeps one > DefaultForegroundTaskRunner per isolate, plus one > DefaultBackgroundTaskRunner. The DefaultPlatform owns these TaskRunners > with a shared_ptr, which is also shared with any caller of > GetForegroundTaskRunner or GetBackgroundTaskrunner. > > This CL moves the task management from the DefaultPlatform to the > TaskRunners. The DefaultForegroundTaskRunner owns and manages the the > task queue, the delayed task queue, and the idle task queue. The > DefaultBackgroundTaskRunner owns the WorkerThread pool and the > background task queue. > > In addition changed many Task* to std::unique_ptr<Task> to document task > ownership. > > R=rmcilroy@chromium.org > > Change-Id: Ib9a01f1f45e5b48844a37d801f884210ec3f6c27 > Reviewed-on: https://chromium-review.googlesource.com/753583 > Commit-Queue: Andreas Haas <ahaas@chromium.org> > Reviewed-by: Ross McIlroy <rmcilroy@chromium.org> > Cr-Commit-Position: refs/heads/master@{#49354} TBR=rmcilroy@chromium.org,ahaas@chromium.org Change-Id: I6c381915a2cae8ea1a0d21d6cfa6e797ccd2d947 No-Presubmit: true No-Tree-Checks: true No-Try: true Reviewed-on: https://chromium-review.googlesource.com/768748Reviewed-by:
Michael Achenbach <machenbach@chromium.org> Commit-Queue: Michael Achenbach <machenbach@chromium.org> Cr-Commit-Position: refs/heads/master@{#49357}
-
Andreas Haas authored
This CL implements the TaskRunners in the DefaultPlatform which has been added recently to the platform API. In addition I changed how task posting works on the DefaultPlatform. With this implementation the DefaultPlatform keeps one DefaultForegroundTaskRunner per isolate, plus one DefaultBackgroundTaskRunner. The DefaultPlatform owns these TaskRunners with a shared_ptr, which is also shared with any caller of GetForegroundTaskRunner or GetBackgroundTaskrunner. This CL moves the task management from the DefaultPlatform to the TaskRunners. The DefaultForegroundTaskRunner owns and manages the the task queue, the delayed task queue, and the idle task queue. The DefaultBackgroundTaskRunner owns the WorkerThread pool and the background task queue. In addition changed many Task* to std::unique_ptr<Task> to document task ownership. R=rmcilroy@chromium.org Change-Id: Ib9a01f1f45e5b48844a37d801f884210ec3f6c27 Reviewed-on: https://chromium-review.googlesource.com/753583 Commit-Queue: Andreas Haas <ahaas@chromium.org> Reviewed-by:
Ross McIlroy <rmcilroy@chromium.org> Cr-Commit-Position: refs/heads/master@{#49354}
-