nsIThreadPool
interface provides support for thread pools.
nsIEventTarget
Last changed in Gecko 1.9.1 (Firefox 3.5 / Thunderbird 3.0 / SeaMonkey 2.0)A thread pool provides a convenient way to process events off the main thread. When you send events to the thread pool, the pool creates a new thread to process the event, up to the number of threads specified by the threadLimit
attribute.
void shutdown(); |
Attribute | Type | Description |
idleThreadLimit |
unsigned long |
Get/set the maximum number of idle threads that are kept alive. Once there are more than this many idle worker threads, the idle threads start getting destroyed. |
idleThreadTimeout |
unsigned long |
Get/set the amount of time in milliseconds that a thread must be idle before it becomes eligible to be destroyed. |
listener |
|
An optional listener that will be notified when a thread is created or destroyed in the course of the thread pool's operation. A listener will only receive notifications about threads created after the listener is set so it is recommended that the consumer set the listener before dispatching the first event. A listener that receives an shutdown() method is called. Threads created after the listener is set will also take ownership of the listener so that the listener will be kept alive long enough to receive the guaranteed nsIThreadPoolListener.onThreadShuttingDown() notification. |
threadLimit |
unsigned long |
The maximum number of threads allowed at once in the pool; you may change this value by altering this attribute. |
Shuts down the thread pool.
You must not call this method from any thread within the thread pool. Instead, you should call it from another thread (typically the one that created the thread pool).
When this method returns, the thread pool and all its threads will have been shut down, and it is no longer be possible to dispatch events to the thread pool.
void shutdown();
None.