worker_pool.js
JavaScript•マスター
Explorer
C40
C++40
C#40
Dart40
Go40
Java40
JavaScript
初級10
中級10
上級10
エキスパート5
マスター5
async_generator.js
proxy_reactive.js
worker_pool.js
observable.js
memo_weakmap.js
Kotlin40
Objective-C40
Perl40
PHP40
Python40
R40
Ruby40
Rust40
Shell40
Swift40
TypeScript40
worker_pool.js
Click to focus
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
class WorkerPool {↵
constructor(script, size = 4) {↵
this.workers = Array(size).fill().map(() => new Worker(script));↵
this.busy = new Set();↵
}↵
async exec(data) {↵
const worker = this.workers.find(w => !this.busy.has(w));↵
this.busy.add(worker);↵
return new Promise(r => {↵
worker.onmessage = e => {↵
this.busy.delete(worker);↵
r(e.data);↵
};↵
worker.postMessage(data);↵
});↵
}↵
}
0WPM•0%•0:00•0/483(0%)|Ln 1, Col 1
UTF-8•JavaScript