Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/takamin/transworker
Inter-thread procedure call with JavaScript WebWorker
https://github.com/takamin/transworker
javascript multithreading npm-module web-worker webworker
Last synced: about 1 month ago
JSON representation
Inter-thread procedure call with JavaScript WebWorker
- Host: GitHub
- URL: https://github.com/takamin/transworker
- Owner: takamin
- License: mit
- Created: 2016-02-09T14:07:52.000Z (almost 9 years ago)
- Default Branch: master
- Last Pushed: 2023-03-03T12:27:05.000Z (almost 2 years ago)
- Last Synced: 2024-04-14T12:34:50.357Z (8 months ago)
- Topics: javascript, multithreading, npm-module, web-worker, webworker
- Language: JavaScript
- Homepage: https://takamints.hatenablog.jp/entry/transworker-v1.1.0-released
- Size: 3.51 MB
- Stars: 0
- Watchers: 3
- Forks: 0
- Open Issues: 4
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
transworker - WebWorkerをメソッド呼び出し感覚で利用するモジュール
=================================================================![](image/readme_top.png "TransWorker")
photo credit: Pallet
via photopin
(license)概要
----TransWorkerは __WebWorkerによるJavaScriptのマルチスレッドを手軽に使えるようにするモジュール__ です。
ユーザーが作成したクラスのインスタンスをワーカースレッド側で生成し、
そのクラスのインスタンスメソッドをメインスレッド側からリモート呼び出しできるようにします。機能
----### インスタンスメソッドをスレッド間リモート呼び出しに変換
メインスレッドではユーザー定義クラスのプロトタイプを読み取り、
スレッド間メッセージを送信する同名のラッパーメソッドを生成します。ワーカスレッド側では、このメッセージを受信すると、クラスインスタンスのメソッドを呼び出して、
その戻り値をスレッド間メッセージでメインスレッドへ戻します。### その他の機能
* ワーカースレッド側からメインスレッドへ通知メッセージを発行。
* メインスレッドからワーカースレッドへのTransferableオブジェクトの移譲(⇒[Transferable - Web API | MDN](https://developer.mozilla.org/ja/docs/Web/API/Transferable))。
* WebWorkerは DedicatedWorker と SharedWorker に対応しています。### リンク
* [JSDoc: Class: TransWorker](https://takamin.github.io/transworker/docs/TransWorker.html)
* [/sample/](https://github.com/takamin/transworker/tree/master/sample)
* [サンプルページ](https://takamin.github.io/transworker/sample/)利用方法
--------### バンドラー利用の場合
```bash
npm install --save transworker
``````javascript
const TransWorker = require("transworker");
```### HTMLで直接読み込む場合
バンドラーを使用しない場合は、ビルド済みの transworker.js を読み込みます。
TransWorker クラスが利用可能です。```xml
```
最新のビルド済みスクリプトを https://takamin.github.io/transworker/transworker.js で公開しています。
LICENSE
-------MIT