Replace setImmediate
with queueMicrotask
.
This commit is contained in:
parent
4d2b327da7
commit
9b58b10421
3 changed files with 4 additions and 13 deletions
|
@ -1,7 +1,5 @@
|
||||||
"use strict";
|
"use strict";
|
||||||
|
|
||||||
require(`setimmediate`);
|
|
||||||
|
|
||||||
// An order represents a pending push or shift.
|
// An order represents a pending push or shift.
|
||||||
const Order = (channel) => {
|
const Order = (channel) => {
|
||||||
let order;
|
let order;
|
||||||
|
@ -249,7 +247,7 @@ const Channel = function(length = 0) {
|
||||||
shift: function() {
|
shift: function() {
|
||||||
const { order, promise } = Order(this);
|
const { order, promise } = Order(this);
|
||||||
shifts.push(order);
|
shifts.push(order);
|
||||||
setImmediate(processOrders);
|
queueMicrotask(processOrders);
|
||||||
|
|
||||||
// Don't freeze promise because Bluebird expects it to be mutable.
|
// Don't freeze promise because Bluebird expects it to be mutable.
|
||||||
return promise;
|
return promise;
|
||||||
|
@ -321,7 +319,7 @@ const Channel = function(length = 0) {
|
||||||
processOrders();
|
processOrders();
|
||||||
|
|
||||||
// Give remaining orders in flight time to resolve before returning.
|
// Give remaining orders in flight time to resolve before returning.
|
||||||
setImmediate(resolve);
|
queueMicrotask(resolve);
|
||||||
}
|
}
|
||||||
}),
|
}),
|
||||||
|
|
||||||
|
@ -348,7 +346,7 @@ const Channel = function(length = 0) {
|
||||||
order.reject(new Error(`Can't push more than one value at a time.`));
|
order.reject(new Error(`Can't push more than one value at a time.`));
|
||||||
} else {
|
} else {
|
||||||
pushes.push(order);
|
pushes.push(order);
|
||||||
setImmediate(processOrders);
|
queueMicrotask(processOrders);
|
||||||
}
|
}
|
||||||
|
|
||||||
// Don't freeze promise because Bluebird expects it to be mutable.
|
// Don't freeze promise because Bluebird expects it to be mutable.
|
||||||
|
|
5
package-lock.json
generated
5
package-lock.json
generated
|
@ -2344,11 +2344,6 @@
|
||||||
"integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==",
|
"integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==",
|
||||||
"dev": true
|
"dev": true
|
||||||
},
|
},
|
||||||
"setimmediate": {
|
|
||||||
"version": "1.0.5",
|
|
||||||
"resolved": "https://registry.npmjs.org/setimmediate/-/setimmediate-1.0.5.tgz",
|
|
||||||
"integrity": "sha1-KQy7Iy4waULX1+qbg3Mqt4VvgoU="
|
|
||||||
},
|
|
||||||
"shebang-command": {
|
"shebang-command": {
|
||||||
"version": "1.2.0",
|
"version": "1.2.0",
|
||||||
"resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-1.2.0.tgz",
|
"resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-1.2.0.tgz",
|
||||||
|
|
|
@ -10,9 +10,7 @@
|
||||||
"bugs": {
|
"bugs": {
|
||||||
"url": "https://gitlab.com/NodeGuy/channel/issues"
|
"url": "https://gitlab.com/NodeGuy/channel/issues"
|
||||||
},
|
},
|
||||||
"dependencies": {
|
"dependencies": {},
|
||||||
"setimmediate": "1.0.5"
|
|
||||||
},
|
|
||||||
"devDependencies": {
|
"devDependencies": {
|
||||||
"@nodeguy/assert": "0.1.4",
|
"@nodeguy/assert": "0.1.4",
|
||||||
"@stryker-mutator/core": "1.1.0",
|
"@stryker-mutator/core": "1.1.0",
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue