异步的IO操作最终是交给谁去做
来源:4-2 同步、异步、阻塞和非阻塞

人土土zzzzz
2018-11-06
老师,请问异步的IO操作最终是交给谁去做了?他们跟主线程之间是什么样一种关系?操作系统开多几个线程去执行这几个IO操作吗?
写回答
1回答
-
bobby
2018-11-08
其实都是交给cpu执行,只是阻塞io很多时候都是io在操作 所以造成了大量的时候在等待io完成,cpu此时属于空等的状态,非阻塞io操作是立即提交以后就立马去执行其他任务不用等到回复,所以问题在于非阻塞, 这样cpu的利用率就立马上来了,关键是怎么知道什么时候io完成了,这个时候主要的调度逻辑是事件循环在完成,所以事件循环既要完成io操作完成后的调度工作又要完成将阻塞任务提交的工作,这样的效率就会比平常我们用的阻塞io操作效率高很多
10
相似问题