https://github.com/danieleds/solid-worker
Process-based WebWorker for the server
https://github.com/danieleds/solid-worker
Last synced: over 1 year ago
JSON representation
Process-based WebWorker for the server
- Host: GitHub
- URL: https://github.com/danieleds/solid-worker
- Owner: danieleds
- License: bsd-3-clause
- Created: 2016-10-10T10:40:57.000Z (almost 10 years ago)
- Default Branch: master
- Last Pushed: 2017-09-14T19:55:44.000Z (almost 9 years ago)
- Last Synced: 2025-03-28T04:51:15.048Z (over 1 year ago)
- Language: JavaScript
- Size: 30.3 KB
- Stars: 4
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# solid-worker
Process-based WebWorker for the server
`require()` is available for flexible inline Worker scripts.
[](https://badge.fury.io/js/solid-worker)
[](http://travis-ci.org/danieleds/solid-worker)
## Example
#### Creating a Worker from a file
The worker script:
```javascript
onmessage = function (ev) {
postMessage(ev.data);
};
```
The core script:
```javascript
var Worker = require("solid-worker");
var worker = new Worker("repeat.js");
worker.onmessage = function (ev) {
console.log(ev.data);
worker.terminate();
};
worker.postMessage("Hello World!");
```
#### Creating a Worker from a Function
```javascript
var Worker = require("solid-worker");
var worker = new Worker(function () {
self.onmessage = function (ev) {
postMessage(ev.data);
};
});
worker.onmessage = function (ev) {
console.log(ev.data);
worker.terminate();
};
worker.postMessage("Hello World!");
```
## Properties
#### onmessage
Message handler, accepts an `Event`
#### onerror
Error handler, accepts an `Event`
## API
#### addEventListener(event, fn)
Adds an event listener
#### postMessage()
Broadcasts a message to the `Worker`
#### terminate()
Terminates the `Worker`
## License
Copyright (c) 2015 Jason Mulligan
Copyright (c) 2016-2017 Daniele Di Sarli
Licensed under the BSD-3 license
Forked from: https://github.com/avoidwork/tiny-worker
This fork introduces bug fixes which weren't included in the original repo.