当前位置: 技术问答>linux和unix
如何一开始系统调用就返回
来源: 互联网 发布时间:2015-07-25
本文导语: 在我的一个要求响应时间的程序中有一个IO的操作(保存数据之类的,耗时较长),我想一开始调用就返回(发一个保存的命令,先返回执行下面的程序,让系统慢慢去保存)。100分不知是多还是少? | ...
在我的一个要求响应时间的程序中有一个IO的操作(保存数据之类的,耗时较长),我想一开始调用就返回(发一个保存的命令,先返回执行下面的程序,让系统慢慢去保存)。100分不知是多还是少?
|
多线程或者多进程 linux下异步io我不知道怎么样操作 呵呵 么的接触过暂时
|
弄一个子进程去慢慢做,主程序返回,呵呵。
|
建议用POSIX的异步I/O函数。
man aio_write。
这个是POSIX标准,可移植性好,也比用fcntl、多进程或者多线程省事,特别是如果你是一个UNIX/Linux编程新手的话。
《UNIX环境高级编程》的内容比较旧了,一定要多看一些新一点的书。
man aio_write。
这个是POSIX标准,可移植性好,也比用fcntl、多进程或者多线程省事,特别是如果你是一个UNIX/Linux编程新手的话。
《UNIX环境高级编程》的内容比较旧了,一定要多看一些新一点的书。
|
多线程是解决方法,你可以在主进程中接收数据,让线程负责保存数据,线程保存成功后通知主进程。具体实现方法可以用队列来实现,或别 的方法。
|
用多线程做这个是杀鸡用牛刀了。
POSIX的异步I/O挺好的。
POSIX的异步I/O挺好的。