| Index: ios/web/public/web_thread.h
|
| diff --git a/ios/web/public/web_thread.h b/ios/web/public/web_thread.h
|
| index 0ab786caa664456a5f132e6249cadadd10488b5a..be41b3080b58b14866953e8ab4464abf0c93c1da 100644
|
| --- a/ios/web/public/web_thread.h
|
| +++ b/ios/web/public/web_thread.h
|
| @@ -139,6 +139,38 @@ class WebThread {
|
| return GetTaskRunnerForThread(identifier)->DeleteSoon(from_here, object);
|
| }
|
|
|
| + // Simplified wrappers for posting to the blocking thread pool. Use this
|
| + // for doing things like blocking I/O.
|
| + //
|
| + // The first variant will run the task in the pool with no sequencing
|
| + // semantics, so may get run in parallel with other posted tasks. The second
|
| + // variant will all post a task with no sequencing semantics, and will post a
|
| + // reply task to the origin TaskRunner upon completion. The third variant
|
| + // provides sequencing between tasks with the same sequence token name.
|
| + //
|
| + // These tasks are guaranteed to run before shutdown.
|
| + //
|
| + // If you need to provide different shutdown semantics (like you have
|
| + // something slow and noncritical that doesn't need to block shutdown),
|
| + // or you want to manually provide a sequence token (which saves a map
|
| + // lookup and is guaranteed unique without you having to come up with a
|
| + // unique string), you can access the sequenced worker pool directly via
|
| + // GetBlockingPool().
|
| + //
|
| + // If you need to PostTaskAndReplyWithResult, use
|
| + // base::PostTaskAndReplyWithResult() with GetBlockingPool() as the task
|
| + // runner.
|
| + static bool PostBlockingPoolTask(const tracked_objects::Location& from_here,
|
| + base::OnceClosure task);
|
| + static bool PostBlockingPoolTaskAndReply(
|
| + const tracked_objects::Location& from_here,
|
| + base::OnceClosure task,
|
| + base::OnceClosure reply);
|
| + static bool PostBlockingPoolSequencedTask(
|
| + const std::string& sequence_token_name,
|
| + const tracked_objects::Location& from_here,
|
| + base::OnceClosure task);
|
| +
|
| // Returns the thread pool used for blocking file I/O. Use this object to
|
| // perform random blocking operations such as file writes.
|
| static base::SequencedWorkerPool* GetBlockingPool() WARN_UNUSED_RESULT;
|
|
|