1 | var Threads = require('./'),
|
2 | tap = require('tap');
|
3 |
|
4 | tap.test('echo worker', function(t) {
|
5 | var echoWorker = new Threads.Worker(function() {
|
6 | this.onmessage = function(event) {
|
7 | this.postMessage(event.data);
|
8 | };
|
9 | });
|
10 |
|
11 | var echoData = 'asdf';
|
12 | echoWorker.onmessage = function(event) {
|
13 | t.equal(event.data, echoData);
|
14 | echoWorker.terminate();
|
15 | t.end();
|
16 | };
|
17 |
|
18 | echoWorker.postMessage(echoData);
|
19 | });
|
20 |
|
21 | tap.test('eval pool', function(t) {
|
22 | var tcount = 0;
|
23 | function test() {
|
24 | console.log('test function in thread pool');
|
25 | }
|
26 |
|
27 | var mypool = Threads.createPool(5);
|
28 | mypool.all.eval(test);
|
29 | mypool.all.eval('test()', function(err, data) {
|
30 | ++tcount;
|
31 | if (tcount == 5) {
|
32 | mypool.destroy();
|
33 | t.end();
|
34 | }
|
35 | });
|
36 | });
|