当前位置: 首页 > 文档资料 > Swoole 内核开发 >

taskwait的result内存

优质
小牛编辑
136浏览
2023-12-01

taskwait 投递请求是进程间通信的方式。但task进程返回结果时是写入共享内存的。

  • taskwait要求必须立即返回结果,所以不存在数据排队的问题,只需要worker进程申请一块共享内存即可
  • 最开始是通过eventfd通信来完成的,后来发现有问题,现改为mutex来进行通知

eventfd大量使用中发现,使用方法有点奇怪,它有8字节的缓冲区,第一次发送一个整形数字 4,再发一次。对端读取出来的竟然是8 不清楚其中的运作原理
暂时不要用eventfd了,直到了解清楚它的适用场景