Chromium Code Reviews| Index: ios/chrome/app/deferred_initialization_runner.h |
| diff --git a/ios/chrome/app/deferred_initialization_runner.h b/ios/chrome/app/deferred_initialization_runner.h |
| index e1bd59ce5e9006bb2fed80ffb1fd0202fc852000..09a7e24400154de8cee5e70a7ce85220c8c8d032 100644 |
| --- a/ios/chrome/app/deferred_initialization_runner.h |
| +++ b/ios/chrome/app/deferred_initialization_runner.h |
| @@ -18,6 +18,7 @@ |
| // Returns singleton instance. |
| + (DeferredInitializationRunner*)sharedInstance; |
| +// Deprecated. |
| // Schedules |block| to be run after |delaySeconds| on the current queue. |
| // This |block| is stored as |name| so code can force this initialization to |
| // be run synchronously if necessary. This method may be called more than |
| @@ -28,6 +29,16 @@ |
| after:(NSTimeInterval)delaySeconds |
| block:(ProceduralBlock)block; |
| +// Adds |block| to a block queue containing all block not run. All blocks in the |
| +// queue are run sequentially with a small delay between each block. |
| +// If the queue is empty |block| is run after a small delay. |
| +// This |block| is stored as |name| so code can force this initialization to |
| +// be run synchronously if necessary. This method may be called more than |
| +// once with the same |name| parameter. Any block with the same |name| |
| +// cancels a previously scheduled block of the same |name| if the block has |
| +// not been run yet. |
| +- (void)enqueueBlockNamed:(NSString*)name block:(ProceduralBlock)block; |
| + |
| // Looks up a previously scheduled block of |name|. If block has not been |
| // run yet, run it synchronously now. |
| - (void)runBlockIfNecessary:(NSString*)name; |
| @@ -42,4 +53,15 @@ |
| @end |
| +@interface DeferredInitializationRunner (ExposedForTesting) |
| + |
| +// Time interval between two blocks. Default value is 200ms. |
| +@property(nonatomic) NSTimeInterval delayBetweenBlocks; |
| + |
| +// Time interval before running the first block. Default value is 3s. It must be |
| +// called before the first call to |enqueueBlockNamed|. |
|
pkl (ping after 24h if needed)
2016/09/20 04:42:56
I would change the start starting with "Default va
gambard
2016/09/22 14:00:25
Done.
|
| +@property(nonatomic) NSTimeInterval delayBeforeFirstBlock; |
| + |
| +@end |
| + |
| #endif // IOS_CHROME_APP_DEFERRED_INITIALIZATION_RUNNER_H_ |