0

我目前正在编写一个对时间敏感的应用程序,它让我思考:与从句柄读取/写入相比,打开/关闭句柄(在我的情况下是 COM 端口)有多贵?

我知道其他操作的相对成本(例如动态分配与堆栈分配),但我在旅途中没有发现任何关于此的信息。

4

1 回答 1

0

没有唯一的答案,特别是在设备的情况下。通常,“打开”操作(CreateFile)涉及设备驱动程序的更多工作。设备驱动程序倾向于在初始化/打开时做最多的工作,以优化后续的读/写操作。此外,许多设备可能需要长时间的设置。例如,“经典”串行驱动程序需要花费大量时间来初始化波特率预分频器和握手信号。相反,当设备打开并准备好时,读取和写入操作通常非常快。但这只是一个提示,它取决于您使用的特定驱动程序(传统的 COM?USB 转换器?驱动程序非常不同)。我建议您通过探查器进行调查。

于 2013-06-12T21:01:50.960 回答