× 警告!旧版文档已经暂停维护,请查看新版文档。点击前往新版文档

Coroutine\Channel->stats

获取通道的状态。函数原型:

function Coroutine\Channel->stats() : array;

返回值

返回一个数组,缓冲通道将包括4项信息,无缓冲通道返回2项信息

  • consumer_num 消费者数量,表示当前通道为空,有N个协程正在等待其他协程调用push方法生产数据
  • producer_num 生产者数量,表示当前通道已满,有N个协程正在等待其他协程调用pop方法消费数据
  • queue_num 通道中的元素数量
array(
  "consumer_num" => 0,
  "producer_num" => 1,
  "queue_num" => 10
);

  • tale

    是不是有语病,consumer_num字段要么不存在,要么只等于0吗?理解起来实在难受

  • tale

    明明只有3个字段,为啥有4个信息。。。

  • 初学者

    swoole的文档仔细阅读的话,其实问题不少, consumer_num 、producer_num 这两个参数的介绍,是人看的么?看的懂吗? 经过测试,即使管道存在未pop完毕的数据,这两个值永远是 0 ,