Winapi HDF/H5文件析构函数在网络断开时挂在CloseHandle上 我们在我们的C++ Windows应用程序中使用HDF1.8 14来读取/写入文件的数据。情况是H5File.cpp的析构函数调用close()方法,最终将导致调用CloseHandle()。如果文件恰好位于网络上,并且在初次读取后断开连接,则对CloseHandle()的调用将无限期挂起

Winapi HDF/H5文件析构函数在网络断开时挂在CloseHandle上 我们在我们的C++ Windows应用程序中使用HDF1.8 14来读取/写入文件的数据。情况是H5File.cpp的析构函数调用close()方法,最终将导致调用CloseHandle()。如果文件恰好位于网络上,并且在初次读取后断开连接,则对CloseHandle()的调用将无限期挂起,winapi,network-programming,hdf5,Winapi,Network Programming,Hdf5,最初的想法是从H5File派生一个新类,该类基于网络状态的知识实现了不同的析构函数和close()方法。这会一直工作到基类析构函数最终被命中为止,这会在应用程序中的不同时间点发生,甚至用户只是想关闭。假设基类析构函数调用派生类的close()方法而不是自己的方法,这是一种误解 从我所读到的内容来看,似乎没有办法阻止基类调用自己的close()方法。这将是理想的,因为我们坚持图书馆目前提供的内容。目前无法升级到较新版本 或者,有没有办法通过某种超时机制通知网络脱离?这是目前我能想到的唯一选择,但我

最初的想法是从H5File派生一个新类,该类基于网络状态的知识实现了不同的析构函数和close()方法。这会一直工作到基类析构函数最终被命中为止,这会在应用程序中的不同时间点发生,甚至用户只是想关闭。假设基类析构函数调用派生类的close()方法而不是自己的方法,这是一种误解

从我所读到的内容来看,似乎没有办法阻止基类调用自己的close()方法。这将是理想的,因为我们坚持图书馆目前提供的内容。目前无法升级到较新版本

或者,有没有办法通过某种超时机制通知网络脱离?这是目前我能想到的唯一选择,但我不是一名网络程序员,所以我不确定有哪些选择

谢谢