读写操作

【勇芳软件工作室】汉化HomePreviousNext

Win32 API支持串行通信资源上的同步和异步(重叠)文件I / O操作。重叠的操作使得调用线程在后台执行操作时执行其他任务。线程使用ReadFileReadFileEx功能从通信资源读取,并且WriteFileWriteFileEx功能写入通信资源。ReadFileWriteFile可以同步或异步执行。ReadFileExWriteFileEx只能异步执行。

这些读写功能的行为是否被作为重叠操作执行,超时参数是否与句柄相关联以及流程控制参数是否与句柄相关联。

线程还可以通过使用TransmitCommChar函数来写入通信资源,该函数在输出缓冲区中的任何待处理数据之前发送指定的字符。该函数对于向接收系统发送高优先级信号字符很有用。高优先级字符的传输仍然受到流量控制和写入超时,同时进行操作。

线程可以使用PurgeComm功能来丢弃设备输出或输入缓冲区中的所有字符。PurgeComm也可以终止等待读取或写入操作,即使操作尚未完成。如果线程使用PurgeComm刷新输出缓冲区,则不会传输删除的字符。要确保发送内容时清空输出缓冲区,线程可以调用FlushFileBuffers功能(同步操作)。但是请注意,FlushFileBuffers需要进行流量控制,但不会写入超时,并且在所有挂起的写入操作都被传送之前不会返回。