while2.php 451 B

123456789101112131415161718192021222324252627
  1. <?php
  2. Swoole\Coroutine::set([
  3. 'max_death_ms' => 5000,
  4. ]);
  5. $s = microtime(1);
  6. echo "start\n";
  7. $flag = 1;
  8. go(function () use (&$flag){
  9. echo "coro 1 start\n";
  10. $i = 0;
  11. while($flag) {
  12. $i ++;
  13. echo "$i\n";
  14. sleep(1);
  15. }
  16. echo "coro 1 can exit\n";
  17. });
  18. $t = microtime(1);
  19. $u = $t-$s;
  20. echo "use time $u s\n";
  21. go(function () use (&$flag){
  22. echo " coro 2 set flag = false\n";
  23. $flag = false;
  24. });
  25. echo "end\n";