首页 > TAG信息列表 > async-await

javascript-在不等待基础流的情况下使用for-await-of中的break

在Node.js项目中,我使用带有可读流的for循环循环作为数据源,因此我的代码在概念上看起来像这样: for await (const item of readableStream) { // ... } 可读流存在于循环之前,即不会为循环创建,但已经存在.现在的要点是,我希望能够停止收听此流,即,我想从循环中中断,但我不想关

异步等待表达式返回错误的结果

我对async-await表达式有问题,该表达式返回错误的结果. private Task<int> A { get { return TaskEx.RunEx<int>(async () => { Thread.Sleep(10000); return 2; }); } } private Task<int> B { get

CodeGo.net>使用Await关键字来实现游戏脚本的协同例程

我试图在C#中实现协同例程,以便在编写游戏中的敌人行为脚本时使我的生活更轻松.游戏是固定帧率.编写脚本的理想语法是: wait(60) while(true) { shootAtPlayer(); wait(30); } 这意味着要等待60帧,向播放器射击,等待30,向播放器射击,等待30 … e.t.c. 我已经在C#中使用yield r

在C#中使用通用约束返回Task的异步方法

我已经在a project I’m working on中实现了命令模式.这几乎是当前结构: public class Response { public bool Success { get; private set; } public static Response CreateErrorResponse() { return new Response { Success = false }; } } public i

如何在C#4.5中将同步4.0转换为异步

我很难用HttpClient将下面在4.0中创建的代码转换为4.5. 根据我的理解,如果我使用异步请求,我是否应该在GUI线程本身中创建多个Web请求而不阻塞GUI. 如何在4.5中使用HttpClient将以下代码转换为异步 // This is what called when button is clicked Task t3 = new Task(SpawnTask)

具有动态延迟的C#任务

我有一个函数,需要一次处理3个项目,并且如果所花费的总时间少于x秒,则该线程应休眠剩余的几秒钟,然后再继续操作. 因此,我正在执行以下操作: private void ProcessItems() { for (int i = 0, n = items.Count; i < n; i++) { Stopwatch stopwa

我的异步/等待用法在这里正确吗?

我正在写一个HTTP服务器.有很多类似的东西,但这是我的.它包含以下代码: private async void Listen(object state) { while (webListener.IsListening) { HttpListenerContext context = await webListener.GetContextAsync(); Task.Factory.S

c#-任务状态:等待激活-DownloadStringTaskAsync -WP8

任务的状态始终为“等待激活”.任务的结果=“”.我不明白为什么…谢谢您的帮助UI调用GetDocLibs方法. public class ServerFunctions { public static List<BdeskDocLib> GetDocLibs(bool onlyDocLibPerso) { string xmlContent = GetXml(); List<BdeskDo

实体框架5线程敏捷性

抛出了EntityFramework代码深处的NullReferenceException(EF错误?),但是我的问题是关于Entity Framework(v5)和WebAPI异步控制器操作的. 在这里很难重新创建一个repro,但是从本质上讲,该代码执行以下操作: public class AController : ApiController { private IUow _uow; //amo

c#-通过分派器的Action(()=> {})冻结ui

我尝试了一个简单的async-await示例,其中包含和不包含.ConfigureAwait(false).使用.ConfigureAwait(false),您可以通过分派器更新ui,不需要它就不需要它.这是下面代码中的情况1和3-有效,我可以理解它是如何工作的. 我的问题是关于案例2,其中我添加了-完全不需要-刷新通过调度程序执

首页> C#> NetworkStream的ReadAsync和读在同一方法

我正在尝试构建具有持久TCP连接的可伸缩服务器应用程序.我使用的序列化库是同步的,将其转换为APM会导致很大的开销(我已经对其进行了测试). 数据包的格式始终是数据包ID的一个字节,其后是更多的标头字段和有效负载.我想知道是否创建了一个异步方法,例如: public async Task<Packet>

c#-用MOQ模拟异步获取方法

我如何摆脱此错误消息: Error 5 Cannot implicitly convert type 'System.Threading.Tasks.Task<System.Collections.Generic.IEnumerable<TGB.Business.DTO.SchoolyearDTO>>' to 'System.Collections.Generic.IEnumerable<TGB.Business.DTO.Schooly

C#-等待IO的可重用测试代码

我正在尝试在WCF公开的方法/服务上使用async / await.一切正常,但我想模拟实际等待IO的服务方法,以便将服务调用注册到IO完成端口,并将线程放回线程池中. 为了澄清,我只是在尝试确认IO完成端口的使用,并更好地了解实际情况. 所以例如我的测试服务当前如下所示: [ServiceContract] p

c#-WebClient.DownloadFileTaskAsync()永远不会真正超时吗?

在异步之前的日子里,人们想知道如何在WebClient上设置超时,而答案只是扩展基类并覆盖GetWebRequest()并在那里设置超时. protected override WebRequest GetWebRequest(Uri address) { // NOTE: this override has no affect if the Async methods are used!!! WebRequest

C#-启动后台任务并立即返回

我有一个名为DownloadFileAsync(url,Func< RemoteFileResponse,Task> onDownloadFinished)的方法,该方法执行以下操作: >检查缓存,如果找到,立即返回缓存并启动后台任务以查看是否需要更新缓存 >如果未找到,则返回null并启动后台任务以异步下载文件>下载文件后,它将调用onDownloadFi

C#-等待DbContext时WPF UI阻塞

我正在尝试异步等待,并且遇到了应该不会发生的UI阻塞. public partial class MainWindow : Window { public MainWindow() { InitializeComponent(); LoadButton.Click += LoadButton_OnClick; } private async void LoadButton_OnClick(object

MVVM:异步事件处理程序的单元测试

我有一个带有异步任务的viewModel.我现在不测试它. public class MyViewModel : BindableBase { public MyViewModel() { this.PropertyChanged += MyViewModel_PropertyChanged; } private void MyViewModel_PropertyChanged(object sender, PropertyCh

c#-EF 6-在SaveChangesAsync方法中异步执行SQL命令会引发NotSupportedException

我已经重写了DbContext的SaveChangesAsync方法来调用一堆存储过程.首先,我调用DbContext的SaveChangesAsync,然后为每个更改的实体执行一个存储过程. 等待所有异步方法调用. 这是EF抛出的异常: System.NotSupportedException: A second operation started on this context before a

C#httpClient(阻止异步调用)死锁

现在的情况 有一个客户端通过HttpClient.GetAsync执行get请求.不幸的是,由于某种原因,我们需要阻止该调用. 为此,使用此Asynchelper类以避免上下文切换死锁(而不是仅使用.Result). public static class AsyncHelper { private static readonly TaskFactory _myTaskFa

CodeGo.net>异步方法的混淆

这个问题已经在这里有了答案:            >            async/await function comparison                                    3个 我试图把头放在异步方法上,我想知道以下两种方法之间的区别是什么. public Task Ad

嵌套任务调用,无需异步/等待

这与以下帖子有关:Why use Async/await all the way down 我很好奇在以下情况下会发生什么: 由于评论已更新: async Task FooAsync() { await Func1(); // do other stuff } Task Func1() { return Func2(); } async Task Func2() { await tcpClient.SendAsync();

c#-如何使用异步为ASP.NET 5 Startup.cs中的用户播种

我正在尝试在ASP.NET 5应用程序中创建一个初始“超级用户”.在MVC 6 / EF7中使用最新的模板文件. 我可以按照此处列出的示例进行操作: http://wildermuth.com/2015/3/17/A_Look_at_ASP_NET_5_Part_3_-_EF7 这可以正常工作-直到我尝试执行异步方法为止.例如: await _userManager.Crea

CsvHelper-异步读取流

我有一项服务,该服务接受包含需要大量插入到数据库中的CSV数据的输入流,并且我的应用程序尽可能使用async / await. 过程是:使用CsvHelper的CsvParser解析流,将每一行添加到DataTable,使用SqlBulkCopy将DataTable复制到数据库. 数据可以是任何大小,因此我想避免一次将整个内容读入内

异步等待未在预期的线程上执行

为了理解异步/等待,我制作了一个带有一个按钮的小示例WPF应用程序.当点击它会做一些“工作”: private async void goButtonClicked(object sender, EventArgs e) { WhatThreadAmI(); var task = populateRawData().ConfigureAwait(false);

链锁?

尝试回答以下question时,我写了这段代码: using static MyNameSpace.Locker; //So that we don't need to specify the static class name before each call. public class MainClass { public MainMethod() { Lock(new object()).Lock(new object()).RunAction(()