协程函数
创建协程
Swoft 框架中一定不要直接使用 Swoole 提供的
go函数创建协程,否则会导致请求和上下文丢失导致一些奇葩问题。
方法一
use Swoft\Co;
Co::create(function(){
// to do
});
方法二
sgo(function(){
// todo
});
Sgo函数使用和 SwooleGo函数完全一样,切记框架中只能使用Sgo函数,不能直接使用Go函数
我们推荐使用sgo
获取协程ID
获取当前协程 ID,-1 为非协程环境:
use Swoft\Co;
$id = Co::id();
获取顶级协程
获取顶级(最外层)协程 ID:
use Swoft\Co;
$id = Co::tid();