- 主题:udp socket收包程序怎么写cpu利用率最低
为什么要利用率低呢?如果是怕影响别的进程运行,那就加个usleep呗,或者复杂一点,限制每秒接受多少字节
【 在 pht398 的大作中提到: 】
: 有个问题想请教一下大家 现在有个linux上的应用程序需要用socket从一个fd持续收大量udp包 速率大概维持在800Mb pps大约70k 因为是嵌入式设备资源有限 所以这个程序对cpu利用率非常敏感 希望能越低越好 而且不能开多线程来运行
: 我理解这种场景缓冲区几乎一直是满的 用循环+recvfrom是不是已经是cpu利用率最低的方案 有没有什么其他好的方法呢 请大家不吝赐教啊
:
: ...................
--
FROM 119.191.211.*
哪个系统调用会增多?
【 在 pht398 的大作中提到: 】
: 要保证能处理所有收到的数据 同时cpu利用率越低越好 因为是嵌入式系统 这个核上还有别的程序要跑 引入sleep会造成接收单位数量消息的系统调用增多 恐怕不能解决问题啊
: 来自 V2072A
--
FROM 119.191.211.*
哦
【 在 pht398 的大作中提到: 】
: usleep也是系统调用啊
: 来自 V2072A
--
FROM 119.191.211.*
你这么自信,我就不多嘴了
【 在 pht398 的大作中提到: 】
: 所以调用usleep的时候时间不能设太短 否则cpu使用率会上升不少哦
: 来自 V2072A
--
修改:smthxes FROM 119.191.211.*
FROM 119.191.211.*