问题出现的来源:
大背景:socket 异步UDP实现文件传输过程中,当文件比较大需要分2次以上传输和接收时,在接收端会出现“在存取+路径+时发生共享违例”的情况。
问题的症状:
如下图,在程序运行传输文件的过程中,会弹出以下的错误对话框。
问题的解决方案:
出现问题是很是迷茫,以前没有见过啊。通过google、baidu查的结果多是一方面文件共享是出现的问题,另一方面文件打开没有关闭的问题。
当然会给我一些提示,还是单步运行给了我明确的结果。单步运行发现,在UDP接收端接收文件内容的时候需要打开文件,但当分为多次(比如N)传输的时候,便重复调用打开文件多次(同样是N),这便产生了同样的错误。
于是,我把文件操作这小块内容重写。
以前的写法如下:
作者:铭毅天下
原文:https://blog.csdn.net/laoyang360/article/details/8680166