文件复制操作:File.Copy() 同步还是异步?

6

我正在使用File.Copy(source, dest, true)将文件从本地复制到远程,并选择覆盖选项。在我的情况下,dest是一个映射的网络驱动器:

File.Copy(source, dest, true);
UnMapDrive(); // unmap the network drive

之后我遇到的问题是源文件可能会被锁定,以至于我无法从本地删除该文件。

我猜测这可能是由File.Copy()调用引起的。不确定这是否是同步过程。换句话说,调用后源文件是否被释放?

1个回答

3

是的,它已经发布了,File.Copy方法会阻塞执行,直到复制操作完成。

文件可能可供读取,但无法删除。

使用Process Monitor检查哪个进程锁定了源文件。


你说得对。我在我的代码中找到了另一个错误(其他地方),这就是导致问题的原因。File.Copy()可以释放文件,没问题。谢谢! - David.Chu.ca

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接