草庐IT

Asynchronous

全部标签

c# - 抑制来自空异步方法的警告

让我们继续说我有以下功能:publicclassTest{publicasyncTaskFinalize(){//Wedon'tneedthisinthisclass,soemptybody}/**Additionalmethodssnipped*/}虽然这工作得很好,但我会收到一条编译器警告:Thisasyncmethodlacks'await'operatorsandwillrunsynchronously.Considerusingthe'await'operatortoawaitnon-blockingAPIcalls,or'awaitTask.Run(...)'todoCPU

c# - 抑制来自空异步方法的警告

让我们继续说我有以下功能:publicclassTest{publicasyncTaskFinalize(){//Wedon'tneedthisinthisclass,soemptybody}/**Additionalmethodssnipped*/}虽然这工作得很好,但我会收到一条编译器警告:Thisasyncmethodlacks'await'operatorsandwillrunsynchronously.Considerusingthe'await'operatortoawaitnon-blockingAPIcalls,or'awaitTask.Run(...)'todoCPU

c# - 我应该如何在异步/等待操作中使用静态方法/类?

我的做法是不在异步操作中使用静态方法和类-除非实现某种锁定技术来防止竞争条件。现在async/await已被引入到c#4.5+框架中-它简化了多线程应用程序并鼓励响应式UI。但是-由于不能/不应该将锁放置在等待方法上(我不讨论这个问题)现在是否使使用async/await的静态方法完全多余? 最佳答案 Itismyapproachnottousestaticmethodsandclasseswithinasynchronousoperations-unlesssomelockingtechniqueisimplementedtopr

c# - 我应该如何在异步/等待操作中使用静态方法/类?

我的做法是不在异步操作中使用静态方法和类-除非实现某种锁定技术来防止竞争条件。现在async/await已被引入到c#4.5+框架中-它简化了多线程应用程序并鼓励响应式UI。但是-由于不能/不应该将锁放置在等待方法上(我不讨论这个问题)现在是否使使用async/await的静态方法完全多余? 最佳答案 Itismyapproachnottousestaticmethodsandclasseswithinasynchronousoperations-unlesssomelockingtechniqueisimplementedtopr

c# - .net 框架是否提供使用文件系统的异步方法?

.net框架是否有一个async内置库/程序集,允许使用文件系统(例如File.ReadAllBytes、File.WriteAllBytes)?或者我是否必须使用StreamReader和StreamWriter的async方法编写自己的库?像这样的东西会很不错:varbytes=awaitFile.ReadAllBytes("my-file.whatever"); 最佳答案 Doesthe.netframeworkhasanasyncbuilt-inlibrary/assemblywhichallowstoworkwiththe

c# - .net 框架是否提供使用文件系统的异步方法?

.net框架是否有一个async内置库/程序集,允许使用文件系统(例如File.ReadAllBytes、File.WriteAllBytes)?或者我是否必须使用StreamReader和StreamWriter的async方法编写自己的库?像这样的东西会很不错:varbytes=awaitFile.ReadAllBytes("my-file.whatever"); 最佳答案 Doesthe.netframeworkhasanasyncbuilt-inlibrary/assemblywhichallowstoworkwiththe

c# - Task.WhenAll 结果排序

我从here了解到Task.Whenall的任务执行顺序不是确定性的,但我找不到有关结果顺序的任何信息。结果集合是否会按照输入中任务的排序顺序包含结果,或者结果可以按任何顺序包含?从我所做的测试来看,它似乎保留了订单,但我需要确认。 最佳答案 来自MSDN:Task.WhenAll(IEnumerable>)这是四个重载中唯一包含此语句的重载:Ifnoneofthetasksfaultedandnoneofthetaskswerecanceled,theresultingtaskwillendintheRanToCompletion

c# - Task.WhenAll 结果排序

我从here了解到Task.Whenall的任务执行顺序不是确定性的,但我找不到有关结果顺序的任何信息。结果集合是否会按照输入中任务的排序顺序包含结果,或者结果可以按任何顺序包含?从我所做的测试来看,它似乎保留了订单,但我需要确认。 最佳答案 来自MSDN:Task.WhenAll(IEnumerable>)这是四个重载中唯一包含此语句的重载:Ifnoneofthetasksfaultedandnoneofthetaskswerecanceled,theresultingtaskwillendintheRanToCompletion

c# - 这两种方法有什么区别?

system.net.mail.smtpclient有两种方法我很困惑。1。SendAsync(MailMessage,Object)将指定的电子邮件消息发送到SMTP服务器进行传递。此方法不会阻塞调用线程,并允许调用者将对象传递给操作完成时调用的方法。-MSDN2。SendMailAsync(邮件消息)将指定的消息发送到SMTP服务器以作为异步操作进行传递。-MSDN请注意,两个方法的名称不同,因此它不是重载。这里到底有什么区别?我正在寻找非常明确的答案,因为MSDN对这两种方法的描述非常含糊(至少对我来说是这样。) 最佳答案 不

c# - 这两种方法有什么区别?

system.net.mail.smtpclient有两种方法我很困惑。1。SendAsync(MailMessage,Object)将指定的电子邮件消息发送到SMTP服务器进行传递。此方法不会阻塞调用线程,并允许调用者将对象传递给操作完成时调用的方法。-MSDN2。SendMailAsync(邮件消息)将指定的消息发送到SMTP服务器以作为异步操作进行传递。-MSDN请注意,两个方法的名称不同,因此它不是重载。这里到底有什么区别?我正在寻找非常明确的答案,因为MSDN对这两种方法的描述非常含糊(至少对我来说是这样。) 最佳答案 不