首页
下载
文档
社区
视频
捐赠
源代码
赞助商
AOT 编译器
AI 助理
商业产品
PHP AOT 原生编译器
Swoole-Compiler 代码加密器
CRMEB 新零售社交电商系统
登录
注册
全部
提问
分享
讨论
建议
公告
开发框架
CodeGalaxy
发表新帖
Coroutine::create 创建协成是否阻塞后续业务执行
上述代码 中(new XlsExcelService())->setHandle($body); 是处理excel导出逻辑,内部涉及调用第三方接口,获取导出数据。 测试发现,Log记录的日志耗时很长,创建协程会阻塞,创建协程不是异步执行的吗? 另外在协程内部我执行sleep操作,记录的日志耗时又是很短的 这又是什么原因 
发布于2年前 · 0 次浏览 · 来自
提问
黄腾
上述代码 中(new XlsExcelService())->setHandle($body); 是处理excel导出逻辑,内部涉及调用第三方接口,获取导出数据。 测试发现,Log记录的日志耗时很长,创建协程会阻塞,创建协程不是异步执行的吗? 另外在协程内部我执行sleep操作,记录的日志耗时又是很短的 这又是什么原因 
赞
0
收藏
提问
分享
讨论
建议
公告
开发框架
CodeGalaxy
登录
后参与评论
评论
2024-05-20
加了糖的格温
协程是异步执行,但是如果没有开启一键协程化或者协程内部有阻塞函数,那么整个进程会阻塞在这个函数中,你加了sleep正好把协程切换出去了,让协程下面的代码可以有机会执行
赞
0
回复
2024-05-21
LingMax
xls 解析 是密集运算 用task异步处理吧
赞
0
回复