标签:async-await
-
当列表可以附加其他任务时用于等待Task.WhenAny(List <T>)的适当模式 - c#
等待更改中的List<Task>是不可能的,因为Task.WhenAny(List<Task>)获取List<Task>的副本。 什么是合适的模式 List<Task> taskList = new List<Task>(); await Task.WhenAny(taskList); 在第一个Wh […]
-
TransformBlock之后如何写入对象? - c#
我有一个需要迭代并行处理的对象的列表。这是我需要做的: foreach (var r in results) { r.SomeList = await apiHelper.Get(r.Id); } 由于我想对其进行parellelize,因此我尝试使用Parallel.ForEach(),但它没有等到所有事情都完成之后才开始使用apiHelper.Get() […]
-
List.add()异步任务等待正确的语法 - c#
您好,我正在尝试将项目异步添加到列表中,但是我不确定如何完成,如果我使用的语法不正确,这就是我目前的情况: 我的看法: await viewModel.getMessages(); list.ItemsSource = viewModel.Messages; 我的视图模型: public List<Message> Messages { get; […]
-
如何在ASP.NET MVC中使用Windows语音合成器 - c#
我试图使用System.Speech类在ASP.NET mvc应用程序中生成语音。 [HttpPost] public ActionResult TTS(string text) { SpeechSynthesizer speechSynthesizer = new SpeechSynthesizer(); speechSynthesizer.Speak(t […]
-
简便的方法来等待已取消的任务? - c#
我发现自己经常这样编写代码: try { cancellationTokenSource.Cancel(); await task.ConfigureAwait(false); // this is the task that was cancelled } catch(OperationCanceledException) { // Cancellatio […]
-
.Net 4.5中的异步HttpClient对于密集负载应用程序是否是错误的选择? - c#
我最近创建了一个简单的应用程序来测试HTTP调用吞吐量,该应用程序可以以异步方式与传统的多线程方法生成。 该应用程序能够执行预定义数量的HTTP调用,最后显示执行它们所需的总时间。在我的测试过程中,所有HTTP调用都对我的本地IIS服务器进行,他们检索了一个小的文本文件(大小为12个字节)。 下面列出了用于异步实现的代码中最重要的部分: public a […]
-
如何解释等待/异步同步上下文切换行为 - c#
我对以下代码的行为有几件事情(但有一件主要事情)不了解。 有人可以帮忙解释一下吗? 它实际上是非常简单的代码-只是一个常规方法调用异步方法。在异步方法中,我使用using块尝试临时更改SynchronizationContext。 在代码的不同点,我探查了当前的SynchronizationContext。 这是我的问题: 当执行到达位置“ 2.1”时,上下 […]
-
C#。如果“等待后”线程繁忙,会发生什么? - c#
等待任务完成但启动异步方法的线程不可用时,C#会发生什么(例如,处理另一个请求)?然后将使用另一个线程而不是第一个线程,或者执行将等到繁忙线程可用? 预先感谢您的回答。 参考方案 这取决于安排继续的线程的SynchronizationContext。 例如,当您在具有UI线程的应用程序(例如ASP.NET或WPF应用程序)中使用async/await时,在U […]
-
异步/等待模式。如何将等待方法传递给另一个方法 - c#
在我的应用程序中,我需要在所有API请求之前调用一个方法。如果满足特定条件,则需要在该方法中执行一组语句。 为了概括这一点,我创建了一个类似这样的帮助器类。 public class CertificateValidator { readonly IDependencyService _serviceLocator; public CertificateVa […]