网络编程中,实现并发的方法一般都是多线程、多进程、io复用技术。
当被问到io复用技术相对于多线程、多进程的优势时,可以这样回答:
cpu的最佳理想工作状态时:当需要的时候立即被调度到,当不需要的时候就好像没有一样。对于多进程、多线程方式,不论有无实际消息进来,线程/进程都可能被分配cpu的时间片,如果被cpu调度的时候,正好没有消息进来,那么就会造成cpu空调度,浪费资源。而对于io复用技术来说,只有在有新消息进来或者有新事件发生时,才会主动去请求调用cpu,每一次调度都是及时、有效的调度。这就是io复用技术的优势。