我正在使用 x 线程启动 mongoose 网络服务器。 有没有一种方法可以在所有 x 个线程都忙时进行记录,以便在需要时增加线程数?
最佳答案
如果不更改 Mongoose 的代码,这是不可能的。例如,我会更改 mongoose.c
中的 static void worker_thread(struct mg_context *ctx)
函数:
- 当工作线程在 while 循环
while (consume_socket(ctx, &conn->client))
内时,您可以认为工作线程很忙。 - 在
close_connection(conn);
之后,工作线程可以自由处理套接字队列中的新事件。
您可以使用该点来计算繁忙线程的数量。
关于c++ - Mongoose 网络服务器获取当前工作线程,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10494266/