bare-worker 4.1.5 → 4.1.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/index.js +15 -16
- package/lib/message-channel.js +3 -0
- package/lib/message-port.js +3 -0
- package/package.json +1 -1
- package/lib/preloads.js +0 -11
package/index.js
CHANGED
|
@@ -1,18 +1,22 @@
|
|
|
1
1
|
const Thread = require('bare-thread')
|
|
2
2
|
const Channel = require('bare-channel')
|
|
3
3
|
const WorkerState = require('./lib/worker-state')
|
|
4
|
+
const MessageChannel = require('./lib/message-channel')
|
|
5
|
+
const MessagePort = require('./lib/message-port')
|
|
4
6
|
const constants = require('./lib/constants')
|
|
5
|
-
const preloads = require('./lib/preloads')
|
|
6
7
|
|
|
7
|
-
|
|
8
|
-
|
|
8
|
+
const preloads = new Map()
|
|
9
|
+
|
|
10
|
+
let parentPort = null
|
|
11
|
+
let workerData = null
|
|
9
12
|
|
|
10
13
|
if (WorkerState.parent) {
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
}
|
|
14
|
-
|
|
15
|
-
|
|
14
|
+
for (const [entry, source] of WorkerState.parent.preloads) {
|
|
15
|
+
preloads.set(entry, source)
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
parentPort = WorkerState.parent.port
|
|
19
|
+
workerData = WorkerState.parent.data
|
|
16
20
|
}
|
|
17
21
|
|
|
18
22
|
const worker = Thread.prepare(require.resolve('./lib/worker-thread'), { shared: true })
|
|
@@ -79,16 +83,11 @@ exports.Worker = exports
|
|
|
79
83
|
exports.MessageChannel = MessageChannel
|
|
80
84
|
exports.MessagePort = MessagePort
|
|
81
85
|
|
|
86
|
+
exports.parentPort = parentPort
|
|
87
|
+
exports.workerData = workerData
|
|
88
|
+
|
|
82
89
|
exports.isMainThread = Thread.isMainThread
|
|
83
90
|
|
|
84
91
|
exports.preload = function preload(entry) {
|
|
85
92
|
preloads.set(entry, Thread.prepare(entry, { shared: true }))
|
|
86
93
|
}
|
|
87
|
-
|
|
88
|
-
if (WorkerState.parent) {
|
|
89
|
-
exports.parentPort = WorkerState.parent.port
|
|
90
|
-
exports.workerData = WorkerState.parent.data
|
|
91
|
-
} else {
|
|
92
|
-
exports.parentPort = null
|
|
93
|
-
exports.workerData = null
|
|
94
|
-
}
|
package/lib/message-channel.js
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
const Channel = require('bare-channel')
|
|
2
|
+
const WorkerState = require('./worker-state')
|
|
2
3
|
const MessagePort = require('./message-port')
|
|
3
4
|
|
|
4
5
|
module.exports = class MessageChannel {
|
|
@@ -9,3 +10,5 @@ module.exports = class MessageChannel {
|
|
|
9
10
|
this.port2 = new MessagePort(channel)
|
|
10
11
|
}
|
|
11
12
|
}
|
|
13
|
+
|
|
14
|
+
if (WorkerState.parent) module.exports = WorkerState.parent.MessageChannel
|
package/lib/message-port.js
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
const EventEmitter = require('bare-events')
|
|
2
2
|
const Channel = require('bare-channel')
|
|
3
|
+
const WorkerState = require('./worker-state')
|
|
3
4
|
const constants = require('./constants')
|
|
4
5
|
const errors = require('./errors')
|
|
5
6
|
|
|
@@ -214,6 +215,8 @@ module.exports = exports = class MessagePort extends EventEmitter {
|
|
|
214
215
|
static _ports = new Set()
|
|
215
216
|
}
|
|
216
217
|
|
|
218
|
+
if (WorkerState.parent) module.exports = WorkerState.parent.MessagePort
|
|
219
|
+
|
|
217
220
|
Bare.on('beforeExit', (exitCode) => {
|
|
218
221
|
for (const port of exports._ports) port._beforeExit(exitCode)
|
|
219
222
|
})
|
package/package.json
CHANGED
package/lib/preloads.js
DELETED