boost :: io_service api实现似乎缺失了吗?

时间:2011-09-07 19:45:59

标签: c++ boost boost-asio

我正在运行boost 1.43.0发布,我看到以下api(在asio :: io_service类中):

为了衡量绩效,请返回队列中未完成的工作项数。

  int get_outstanding_work();
  int get_ready_work();

我没有找到任何关于此的web文档。尽管我在io_service.ipp中看到了它们的实现,但是没有实际的实现。我想用它知道有多少处理程序待处理?

1 个答案:

答案 0 :(得分:1)

我不确定这种行为是否适用于io_service类。

解决方法: 您可能希望在处理程序周围创建一个包装函数,而不是直接传递处理程序,并将其传递给io_service。 所述包装器将保持对size_t变量的引用并在构造函数上递增,并在()运算符上递减。

之后,只需查看size_t变量,即可查看io_service队列中剩余的处理程序数。