Skip to content

Commit b63c9c9

Browse files
committed
Improve producer-consumer examples
* Use setImmediate instead of while(true) * Add another parallel task
1 parent 95fefa8 commit b63c9c9

File tree

2 files changed

+20
-2
lines changed

2 files changed

+20
-2
lines changed

producer-consumer-send.js

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -31,6 +31,10 @@ function* consume() {
3131
let consumer = consume();
3232
let producer = produce(consumer);
3333
consumer.next();
34-
while (true) {
34+
35+
function step() {
3536
producer.next();
37+
setImmediate(step);
3638
}
39+
40+
step();

producer-consumer.js

Lines changed: 15 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,21 @@ function* consume() {
2626
}
2727
}
2828

29+
function* anotherTask() {
30+
while (true) {
31+
yield* sleep(1000);
32+
console.log('Hello!\n');
33+
}
34+
}
35+
2936
let consumer = consume();
30-
while (true) {
37+
let task = anotherTask();
38+
39+
function step() {
3140
consumer.next();
41+
task.next();
42+
43+
setImmediate(step);
3244
}
45+
46+
step();

0 commit comments

Comments
 (0)