1--TEST-- 2swoole_coroutine/defer: coro defer 3--SKIPIF-- 4<?php require __DIR__ . '/../../include/skipif.inc'; ?> 5--FILE-- 6<?php 7require __DIR__ . '/../../include/bootstrap.php'; 8go(function () { 9 defer(function () { 10 echo "10\n"; 11 Assert::same(co::getuid(), 1); 12 co::sleep(.001); 13 Assert::same(co::getuid(), 1); 14 echo "11\n"; 15 defer(function () { 16 echo "14\n"; 17 Assert::same(co::getuid(), 1); 18 co::sleep(.001); 19 Assert::same(co::getuid(), 1); 20 echo "15\n"; 21 }); 22 defer(function () { 23 echo "12\n"; 24 Assert::same(co::getuid(), 1); 25 co::sleep(.001); 26 Assert::same(co::getuid(), 1); 27 echo "13\n"; 28 }); 29 }); 30 defer(function () { 31 echo "8\n"; 32 Assert::same(co::getuid(), 1); 33 co::sleep(.001); 34 Assert::same(co::getuid(), 1); 35 echo "9\n"; 36 }); 37 echo "0\n"; 38 Assert::same(co::getuid(), 1); 39 co::sleep(.001); 40 Assert::same(co::getuid(), 1); 41 echo "1\n"; 42 defer(function () { 43 echo "4\n"; 44 Assert::same(co::getuid(), 1); 45 co::sleep(.001); 46 Assert::same(co::getuid(), 1); 47 echo "5\n"; 48 defer(function () { 49 echo "6\n"; 50 Assert::same(co::getuid(), 1); 51 co::sleep(.001); 52 Assert::same(co::getuid(), 1); 53 echo "7\n"; 54 }); 55 }); 56 defer(function () { 57 echo "2\n"; 58 Assert::same(co::getuid(), 1); 59 co::sleep(.001); 60 Assert::same(co::getuid(), 1); 61 echo "3\n"; 62 }); 63}); 64swoole_event_wait(); 65?> 66--EXPECT-- 670 681 692 703 714 725 736 747 758 769 7710 7811 7912 8013 8114 8215 83