task-parallel-library 相关问题

自.NET 4以来,任务并行库是.NET Framework的一部分。它是一组API,使开发人员能够对异步应用程序进行编程。

Task.Factory.StartNew + TaskCreationOptions.LongRunning 说明

我试图理解 David Fowler 在这里所说的关于 Task.Factory.StartNew + TaskCreationOptions.LongRunning 的内容。 💡 注意:不要将 TaskCreationOptions.LongRunning 与异步代码一起使用,因为这会......

回答 1 投票 0

使用异步 lambda 的并行 foreach

我想并行处理一个集合,但我在实现它时遇到了困难,因此我希望得到一些帮助。 如果我想在 C# 中调用一个标记为 async 的方法,就会出现麻烦...

回答 10 投票 0

MaxDegreeOfParallelism = 2 显示 3 个线程

当我运行以下代码时: 公共静态双 SumRootN(int root) { 双结果 = 0; 对于 (int i = 1; i < 10000000; i++) { result += Math.Exp(Math.Log(i) / root); }...

回答 1 投票 0

lock 关键字对 Parallel.ForEach 循环的影响

这更多的是一个概念性问题。我想知道我是否在 Parallel.ForEach 循环内部使用了锁,这是否会消除并行化 foreach 循环的好处。 这是一些示例代码...

回答 4 投票 0

如何防止Parallel.ForEach循环在运行时改变任务数量?

我正在使用 Parallel.ForEach 循环来做一些工作,并使用 localInit 对其进行初始化,如下所示: localInit: () => 新 { foo = 新的 Foo(), 条形 = CreateBars(), } 根据

回答 3 投票 0

异步方法被另一个线程第二次调用

我正在调用如下所示的端点,该端点从我们正在使用的专有 API 中提取数据。 我正在 Sync2 方法中进行并行调用以获取订单详细信息。因为他们的 API 返回 42...

回答 1 投票 0

存在参数依赖时如何使用WhenAll()?

当执行多个异步任务时,我想使用 WhenAll() 方法,这样我就可以获得使用它的好处:组合错误传播等。 鉴于以下情况: var item1Task = _service.

回答 1 投票 0

分区:如何在每个分区后添加等待

我有一个API,每分钟接受20个请求,之后,我需要等待1分钟才能查询它。我有一个项目列表(通常超过 1000 个),我需要从 API 查询其详细信息,...

回答 1 投票 0

如何使用谓词实现 Task.WhenAny()

我想同时执行多个异步任务。每个任务将运行一个 HTTP 请求,该请求要么成功完成,要么引发异常。我需要等到第一个任务完成...

回答 6 投票 0

任务构造函数与带有异步操作的 Task.Run - 不同的行为

有人可以解释一下吗,也许我遗漏了一些明显的东西。 这两个案例的行为看似相同,但其实不然。 情况1: 使用异步操作启动任务,那是……

回答 3 投票 0

Parallel.Foreach 抛出异常 InvalidOperationException

当我在集合上使用 Parallel.Foreach 循环时,它会抛出异常 “在上一个操作完成之前,在此上下文上开始了第二个操作。这通常是由

回答 1 投票 0

使用这种异步日志记录代码有什么缺点?

我刚刚编写的一些代码如下。 它演示了将 PostSharp 方面应用于方法,以便以异步方式记录方法调用的持续时间 - 以便 if ...

回答 2 投票 0

使用并行库添加到列表时保证线程安全的正确方法

我循环访问连接字符串数组,并在每个循环中提取一些信息并将其添加到列表中。现在,我想使用并行库使其成为多线程,但我不确定该库是否...

回答 1 投票 0

在 Parallel.ForEach 方法内共享 List<T> 时是否需要同步?

我刚刚看到以下代码片段: 公共列表 ProcessText(列表学生) { 列表 结果 = new(); Parallel.ForEach(学生, (st) => { ...

回答 1 投票 0

在并行方法内共享列表时需要使用同步。foreach

我刚刚看到以下代码片段: 公共列表 ProcessText(列表学生) { 列表 结果 = new(); Parallel.ForEach(学生, (st) => ...

回答 1 投票 0

从Task.WhenAll获取返回值

希望这是一个相当简单的。我有一个对象集合,每个对象都有一个我想调用并从中收集值的异步方法。我希望它们并行运行。我想要什么

回答 2 投票 0

ConcurrentQueue出队时如何设置最大并发线程数?

我有一个线程负责入队,一个线程负责出队。然而,数据入队的频率远远超过出队+处理数据所需的时间。 ...

回答 2 投票 0

为什么在ParallelLoopState类中看不到CurrentIteration

当我调试Parallel.ForEach时,我可以发现有字段CurrentIteration,但我在ParallelLoopState中找不到它。 如何获取CurrentIteration的值?

回答 2 投票 0

Task.WhenAll 永远不会因异常而完成

我希望这段代码会在 1 秒后崩溃,但它永远不会终止。 开放系统 打开系统.线程.任务 让 foo() = 任务 { 做!任务.延迟(1_000_000) 返回1 } 让吧()...

回答 1 投票 0

调用 Polly ExecuteAsync 方法的正确方法是什么?

执行策略,我看到有人这样调用 ExecuteAsync: ... .ExecuteAsync(async (ct) => await GetEmployeeAsync(employeeId, ct), cancellationToken); 像这样: ... .ExecuteAs...

回答 1 投票 0

© www.soinside.com 2019 - 2024. All rights reserved.