The close() method of the DedicatedWorkerGlobalScope interface discards any tasks queued in the DedicatedWorkerGlobalScope's event loop, effectively closing this particular scope.
self.close();
If you want to close your worker instance from inside the worker itself, you can call the following:
close();
close() and self.close() are effectively equivalent — both represent close() being called from inside the worker's inner scope.
Note: There is also a way to stop the worker from the main thread: the Worker.terminate method.
| Specification | Status | Comment |
|---|---|---|
| HTML Living Standard The definition of 'close()' in that specification. | Living Standard |
| Feature | Chrome | Firefox (Gecko) | Internet Explorer | Opera | Safari |
|---|---|---|---|---|---|
| Basic support | ? | 54 (54) | ? | ? | ? |
| Feature | Android | Chrome for Android | Firefox Mobile (Gecko) | IE Mobile | Opera Mobile | Safari Mobile |
|---|---|---|---|---|---|---|
| Basic support | ? | ? | 54 (54) | ? | ? | ? |
General note: In newer browser versions, close() is available on DedicatedWorkerGlobalScope and SharedWorkerGlobalScope. In older browser versions, it is available on WorkerGlobalScope. This change was made to stop close() being available on service workers, as it isn't supposed to be used there and always throws an exception when called (see bug 1336043).
© 2005–2018 Mozilla Developer Network and individual contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/API/DedicatedWorkerGlobalScope/close