The Thread Manager, introduced in Firefox 3, offers an easy to use mechanism for creating threads and dispatching events to them for processing.
Warning: Only C++ code may use the thread manager and XPCOM thread. Application/Extension JavaScript should consider using a
ChromeWorker instead.") Interfaces
There are several interfaces that provide threading support:
-
nsIThreadManager - The Thread Manager itself lets you create threads.
-
nsIThread -
The
nsIThreadinterface encapsulates an operating system thread, providing easy cross-platform access to multithreading in your code. -
nsIThreadPool - A thread pool provides a limited set of worker threads. When you dispatch an event to the pool, the pool selects an available worker thread to process the event.
-
nsIThreadInternal -
A subclass of
nsIThreadthat is implemented by the XPCOM thread object to add support for observing dispatch activity on a thread. -
nsIThreadObserver - Provides the ability to monitor a thread, to receive notifications when events are dispatched to it and when they're finished being processed.
-
nsIThreadEventFilter -
This interface is used by the
nsIThreadInternal.pushEventQueue()method innsIThreadInternalto allow event filtering. -
nsIRunnable - This interface is the base for all events/runnable objects which are dispatched to threads.