c#-4.0 - C# 4.0 AsParallel() 访问文件系统时出现UnAuthorizedAccessException

标签 c#-4.0 parallel-processing

我正在使用 C# 4.0 AsParallel() 扩展方法并在访问文件系统时得到 UnAuthorizedAccessException

foreach (var item in items.AsParallel())
{
    File.Open(@"c:\file.txt");
}

最佳答案

原因是默认情况下 File.Open 打开时禁用共享。通过使用 AsParallel,您有多个线程试图在禁用共享的情况下同时打开文件。这按预期失败了。

你需要要么

  • 不能同时进行
  • 在启用共享的情况下打开文件

关于c#-4.0 - C# 4.0 AsParallel() 访问文件系统时出现UnAuthorizedAccessException,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1750211/

相关文章:

c# - 将 ViewBag 作为参数传递

c# - 如何根据另一个列表的元素和条件从一个列表中删除元素?

multithreading - 为什么我的程序用一个核心而不是两个核心更快?

java - 使用多线程或优先队列确定特定 API 调用优先级的方法?

c# - 获取并行执行方法的返回值

javascript - Jquery 数据表标题与正文不对齐

c# - 使用字符串生成器,我读取了一个文件。如何查找给定字符串是否存在于文件中?

entity-framework - 如何通过 Linq-To-Entities 获取某个节点的所有后代?

c++ - 等待条件变量后线程未并行运行

SSIS 错误 - 无法执行事务操作,因为有正在处理此事务的待处理请求