问题描述:在socket编程使用select时,其中的一个参数timeout,在设置为struct timeval timeOut={0,0},即不等待时,程序运行后的CPU占用率之先生高,即使只有一个线程的时候,也很快让CPU使用率达到100%,开了三个同时连接的线程后,情况更加糟糕。将参数改为struct timeval timeOut={0,1},即等待一毫秒时,情况得到解决,即使同时打开20个连接,CPU的占用率也只有20%多。经过调试,发现只要将timeout参数设置为不等待,程序就能正常工作,CPU占用率也不会上升那么快。
select等待的困惑
最新推荐文章于 2019-05-17 16:45:00 发布