Dart API Referencedart:htmlWorker

Worker Interface

Workers are background tasks that can be easily created and can send messages back to their creators. Creating a worker is as simple as calling the Worker() constructor, specifying a script to be run in the worker thread.

Of note is the fact that workers may in turn spawn new workers as long as those workers are hosted within the same origin as the parent page.  In addition, workers may use XMLHttpRequest for network I/O, with the exception that the responseXML and channel attributes on XMLHttpRequest always return null.

For a list of global functions available to workers, see Functions available to workers.

Gecko 2.0 note
(Firefox 4 / Thunderbird 3.3 / SeaMonkey 2.1)

If you want to use workers in extensions, and would like to have access to js-ctypes, you should use the ChromeWorker object instead.

See Using web workers for examples and details.

Extends

AbstractWorker

Constructors

Code new Worker(String scriptUrl) #

Worker(String scriptUrl);

Methods

Code WorkerEvents get on() #

WorkerEvents get on();

Code void postMessage(message, [List messagePorts]) #

Sends a message to the worker's inner scope. This accepts a single parameter, which is the data to send to the worker. The data may be any value or JavaScript object that does not contain functions or cyclical references (since the object is converted to JSON internally).

Parameters
aMessage
The object to deliver to the worker; this will be in the data field in the event delivered to the onmessage handler. This may be any value or JavaScript object that does not contain functions or cyclical references (since the object is converted to JSON internally).
void postMessage(/*SerializedScriptValue*/ message, [List messagePorts]);

Code void terminate() #

Immediately terminates the worker. This does not offer the worker an opportunity to finish its operations; it is simply stopped at once.

void terminate();
void terminate();

Code void webkitPostMessage(message, [List messagePorts]) #

void webkitPostMessage(/*SerializedScriptValue*/ message, [List messagePorts]);

This page includes content from the Mozilla Foundation that is graciously licensed under a Creative Commons: Attribution-Sharealike license. Mozilla has no other association with Dart or dartlang.org. We encourage you to improve the web by contributing to The Mozilla Developer Network.