Win32重叠I/O - 完成例程还是WaitForMultipleObjects?
在Windows系统中,重叠I/O是一种用于执行非阻塞I/O的机制,它可以在等待I/O操作完成时同时进行其他操作。在C++中,使用overlapped
关键字来表示一个重叠I/O操作,该操作可以通过CreateFile
函数和ReadFile
、WriteFile
等文件操作来创建。
在编写重叠I/O代码时,需要使用非阻塞文件操作,这些操作可以在操作未完成时立即返回,并且可以立即进行其他工作。当操作完成时,需要使用WaitForSingleObject
函数等待操作完成。
WaitForMultipleObjects
函数是Windows系统中的一个等待函数,可以等待多个对象(如文件、事件、线程等)完成或发生事件。在重叠I/O中,使用WaitForMultipleObjects
函数等待操作完成是非常常见的。
总的来说,在重叠I/O中,需要使用非阻塞文件操作,并使用WaitForSingleObject
函数等待操作完成。当需要等待多个对象完成时,可以使用WaitForMultipleObjects
函数。
领取专属 10元无门槛券
手把手带您无忧上云