看到一段协程代码,不是很懂,为什么结果是0321的顺序?
<?php
$n = 4;
for ($i = 0; $i < $n; $i++) {
go(function () use ($i) {
Co::sleep(1);
echo "hello $i \n";
});
};
echo "hello main \n";
结果:
hello main
hello 0
hello 3
hello 2
hello 1
看到一段协程代码,不是很懂,为什么结果是0321的顺序?
<?php
$n = 4;
for ($i = 0; $i < $n; $i++) {
go(function () use ($i) {
Co::sleep(1);
echo "hello $i \n";
});
};
echo "hello main \n";
结果:
hello main
hello 0
hello 3
hello 2
hello 1
1 回答4k 阅读✓ 已解决
3 回答1.8k 阅读✓ 已解决
2 回答2.2k 阅读✓ 已解决
1 回答1.4k 阅读✓ 已解决
2 回答2.2k 阅读
1 回答549 阅读✓ 已解决
779 阅读
协程是“并发”执行的,没有顺序。