gpt4 book ai didi

windows - 如何避免 GetFileAttributes 中的网络停顿?

转载 作者:可可西里 更新时间:2023-11-01 12:35:26 25 4
gpt4 key购买 nike

我正在测试远程共享(在 Windows 服务器上)中是否存在文件。用于测试的底层函数是 WinAPI 的 GetFileAttributes,发生的情况是该函数在各种情况下可能会花费过多的时间(几十秒),例如当目标服务器离线时,当有权利或 DNS 问题等。

但是,在我的特殊情况下,它始终是 LAN 访问,因此如果文件不能在不到 1 秒内访问,那么通常再等几十秒就无法访问...

是否有不会停止的 GetFileAttributes 替代方法? (除了在线程中调用它并在超时后终止线程,这似乎带来了自己的问题包)

最佳答案

问题真的不是 GetFileAttributes。它通常只调用一次底层文件系统驱动程序。是那个 IO 停滞了。

不过,解决方案可能很简单。调用CancelSynchronousIo()一秒钟后(这显然需要第二个线程,因为您的第一个线程卡在 GetFileAttributes 中)。

关于windows - 如何避免 GetFileAttributes 中的网络停顿?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1142080/

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