一, 异步IO与同步IO
--- 异步IO
异步文件IO方式中,线程发送一个IO请求到内核,然后继续处理其他的事情,内核完
成IO请求后,将会通知线程IO操作完成了。
比如将一个进程所做的IO部分的工作 可以交给多个从属进程去完成,但是调用仍然
是真正的成功(写入磁盘)后才返回成功,交出去后主进程可以做其他事情,等IO处理
完成后再通知主进程来继续处理。
例子:
Oracle DBWR 负责搜集dirty buffer , slaves负责写磁盘
Checkpoint 的成功过程是:
dbwr 搜集dirty buffer ,交给 slave 写磁盘,写完毕通知dbwr ,然后dbwr才返回检查点完成
但是在 slave 写磁盘的过程中,dbwr 可以去做别的事情,比如搜集dirty buffer ,但并不是
说这个任务已经完成 (写磁盘完成后才通知检查点完成)
--- 同步IO
在同步文件IO中,线程启动一个IO操作然后就立即进入等待状态,直到IO操作完成后线程才
醒来继续执行。
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/35489/viewspace-759700/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/35489/viewspace-759700/