task-parallel-library相关内容

并行运行两个异步任务并在 .NET 4.5 中收集结果

我一直在尝试获得一些我认为使用 .NET 4.5 很简单的东西 我想同时启动两个长时间运行的任务并收集 结果是最好的 C# 4.5 (RTM) 方式 以下有效,但我不喜欢它,因为: 我希望 Sleep 成为一个异步方法,以便它可以await 其他方法 它看起来很笨拙,Task.Run() 我认为这根本没有使用任何新的语言功能! 工作代码: public static ..
发布时间:2021-11-24 08:58:43 C#/.NET

等待具有不同结果的多个任务

我有 3 个任务: 私有异步任务FeedCat() {}私有异步任务卖房() {}私有异步任务BuyCar() {} 在我的代码可以继续之前,它们都需要运行,我也需要每个的结果.结果没有任何共同点 如何调用并等待 3 个任务完成然后获取结果? 解决方案 使用 WhenAll 后,可以使用 await 单独拉出结果: var catTask = FeedCat();va ..
发布时间:2021-11-24 08:58:33 C#/.NET

如何取消等待中的任务?

我正在处理这些 Windows 8 WinRT 任务,并且我正在尝试使用以下方法取消任务,并且它在某种程度上起作用.CancelNotification 方法确实被调用了,这让你认为任务被取消了,但在后台任务一直在运行,然后任务完成后,任务的状态始终是完成的,永远不会被取消.有没有办法在任务取消时完全停止任务? private async void TryTask(){CancellationT ..
发布时间:2021-11-24 08:58:23 C#/.NET

异步/等待 vs BackgroundWorker

这几天我测试了 .net 4.5 和 c#5 的新特性. 我喜欢它的新 async/await 功能.早些时候我使用 BackgroundWorker使用响应式 UI 在后台处理更长的进程. 我的问题是:在拥有这些不错的新功能之后,我应该什么时候使用 async/await 以及什么时候使用 BackgroundWorker?两者的常见场景是什么? 解决方案 async/awa ..

执行永无止境的任务的正确方法.(计时器与任务)

因此,只要应用程序正在运行或请求取消,我的应用程序就需要几乎连续执行操作(每次运行之间暂停 10 秒左右).它需要做的工作最多可能需要 30 秒. 最好使用 System.Timers.Timer 并使用 AutoReset 来确保它在前一个“滴答"完成之前不执行操作. 或者我应该在 LongRunning 模式下使用带有取消标记的常规任务,并在其中使用常规的无限 while 循环来调 ..
发布时间:2021-11-22 11:05:04 C#/.NET

并行运行两个异步任务并在 .NET 4.5 中收集结果

我一直在尝试获得一些我认为使用 .NET 4.5 很简单的东西 我想同时启动两个长时间运行的任务并收集 结果是最好的 C# 4.5 (RTM) 方式 以下有效,但我不喜欢它,因为: 我希望 Sleep 成为一个异步方法,以便它可以await 其他方法 它看起来很笨拙,Task.Run() 我认为这根本没有使用任何新的语言功能! 工作代码: public static ..
发布时间:2021-11-22 11:03:39 C#/.NET

等待具有不同结果的多个任务

我有 3 个任务: 私有异步任务FeedCat() {}私有异步任务卖房() {}私有异步任务BuyCar() {} 在我的代码可以继续之前,它们都需要运行,我也需要每个的结果.结果没有任何共同点 如何调用并等待 3 个任务完成然后获取结果? 解决方案 使用 WhenAll 后,可以使用 await 单独拉出结果: var catTask = FeedCat();va ..
发布时间:2021-11-22 11:03:28 C#/.NET

如何取消等待中的任务?

我正在处理这些 Windows 8 WinRT 任务,并且我正在尝试使用以下方法取消任务,并且它在某种程度上起作用.CancelNotification 方法确实被调用了,这让你认为任务被取消了,但在后台任务一直在运行,然后任务完成后,任务的状态始终是完成的,永远不会被取消.有没有办法在任务取消时完全停止任务? private async void TryTask(){CancellationT ..
发布时间:2021-11-22 11:03:17 C#/.NET

异步/等待 vs BackgroundWorker

这几天我测试了 .net 4.5 和 c#5 的新特性. 我喜欢它的新 async/await 功能.早些时候我使用 BackgroundWorker使用响应式 UI 在后台处理更长的进程. 我的问题是:在拥有这些不错的新功能之后,我应该何时使用 async/await 以及何时使用 BackgroundWorker?两者的常见场景是什么? 解决方案 async/await 旨 ..

并行调用数百个 azure 函数

我有一个使用某些规则引擎执行规则的应用程序.我有大约 500 多条规则,我们的应用程序将收到大约 10,000 个条目,所有这 10,000 个条目都应分别通过这 500 条规则进行验证.我们目前正计划将所有规则迁移到 Azure 函数中.也就是说,每个 Azure 函数都对应一个规则. 所以我尝试了概念验证,并使用 Task.delay 创建了几个 Azure 函数来模拟真实的规则验证.我 ..

结合应用域远程处理和任务时出现死锁

我的应用程序需要将插件加载到单独的应用程序域中,然后异步执行其中的一些代码.我已经编写了一些代码来将 Task 包装在可编组类型中: 静态类 RemoteTask{公共静态异步任务ClientComplete(RemoteTaskremoteTask,CancellationToken 取消令牌){结果;使用 (cancellationToken.Register(remoteTask.Canc ..
发布时间:2021-11-16 19:10:32 C#/.NET

合并数据流结果

我正在开发一个 Dataflow 管道,它读取一组文件,并针对每个文件中的每一行执行一系列 Dataflow 块. 在为文件中的每一行完成所有步骤后,我想对文件本身执行更多块,但我不知道这怎么可能. 通过 TransformManyBlock 拆分处理很简单,但是如何合并? 我习惯了 Apache Camel 的 Splitter 和 Aggregator 功能 - 或者 Dataf ..
发布时间:2021-11-11 22:50:52 C#/.NET

为什么在使用 ContinueWith 执行任务时 Windows 窗体 UI 被阻止?

我花了几天时间在 Google 中搜索并试图了解为什么在我的情况下,在 任务 中执行 ping 时,Windows 窗体 UI 被阻止.我看到了很多类似的案例,但没有一个能解释我的具体案例. 问题描述: 我有一个异步发送 ping 的应用程序.每个 ping 都在任务内部发送.我使用 .ContinueWith 接收 ping 的结果并将其打印到文本框而不阻塞 UI 线程.如果我一次启 ..
发布时间:2021-09-27 19:48:33 C#/.NET

将事务与任务并行库一起使用

我有 N 个进程在 SQL Server 2008 上运行.如果任何一个进程失败,我需要回滚所有其他进程. 我正在考虑使用 TPL 创建一个父任务和 N 个子任务.所有这些都包含在一个 transactionScope (IsolationLevel.ReadCommitted) 中,但在我下面的示例中,child2 引发错误(customers2 不是有效表)而 child1 不会't 回 ..
发布时间:2021-09-09 19:14:33 C#/.NET

使用任务并行库进行 I/O 绑定处理

想知道您是否可以澄清. 我正在编写一个工具,所有要做的就是从数据库 (sql server) 中检索数据并创建 txt 文件.我说的是 500.000 个 txt 文件. 一切顺利. 但是我想知道使用 Task Parallel 库是否可以改进和加快创建这些文件所需的时间. 我知道(阅读)“TPL"不打算用于 I/0 绑定处理,并且很可能它会执行与顺序. 这是真的吗? ..
发布时间:2021-09-04 19:39:10 C#/.NET

为什么并行任务没有运行?

我有这个代码,它是为了证明问题而剥离的更大功能的骨架: var tasks = Enumerable.Range(0, 10).Select(laneNo => Task.Run(() => Console.WriteLine($"Starting generator for lane {laneNo}")));for(int r=0;;++r){Task.Delay(TimeSpan.Fro ..
发布时间:2021-09-04 19:39:04 C#/.NET