gpt4 book ai didi

delphi - 串行端口 WriteFile() 卡住

转载 作者:行者123 更新时间:2023-12-03 15:34:34 26 4
gpt4 key购买 nike

我有一个简单的应用程序,它应该每分钟向串行端口发送一个字节。但有时,由于某种奇怪的原因,它会卡住在 WriteFile() 函数中的某个位置。软件和硬件流量控制均已关闭。我在谷歌上搜索了一些有关从另一个线程执行的待处理读取操作的内容,但我相信这不是问题,因为我的应用程序有单线程。此外,CreateFile 的句柄看起来有效,因此该端口不应被任何其他应用程序使用。有人遇到过这种情况吗?

最佳答案

如果您在 google 上搜索“writefilehangs”一词,您会发现许多关于此问题的讨论。有些原因是缓冲区溢出、正确调整缓冲区大小、COM 端口有缺陷、清除错误状态......似乎有很多事情可以尝试。

我建议的另一件事是使用通信库,而不是直接调用 API,例如 Async Professional ( http://sourceforge.net/projects/tpapro/ )。即使它们给您的应用程序增加了一些开销,它们也可能会简化您的工作并避免许多潜在的陷阱......

关于delphi - 串行端口 WriteFile() 卡住,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/251594/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com