【发布时间】:2014-06-01 05:34:41
【问题描述】:
我通过tcp和以下代码读取高频数据
while (1) {
lrev = recv(fd, buff, 80, MSG_WAITALL);
dowork();
}
我正在通过一个线程运行此代码,并将此线程分配给特定的 CPU 内核。我可以看到特定核心使用 100% CPU。是因为 while(1) 循环吗?延迟目的是好是坏?
我的进程有 5 个线程,每个线程都在单独的核心上运行。我的总 CPU 使用率约为 400%。
谢谢
【问题讨论】:
-
查看
recv返回的值:/
标签: c++ multithreading sockets tcp cpu-usage