异步和等待对控制台应用程序的好处

3

我知道在.NET Web API和Web应用程序中使用async和await的好处。我想知道如果我在控制台应用程序中使用它,它会提供什么好处。


1
这取决于您在控制台应用程序中正在做什么。对于一个简单的“hello world”程序来说,没有任何好处。 - fredrik
1
你可以编写异步代码。 - Lasse V. Karlsen
说实话,并不多。在Web应用程序中,这更有意义,因为我们必须使用有限数量的线程为更多用户提供服务。 - Ankush Jain
异步编程可以在等待长时间返回结果时释放线程。在 Web API 和 Web 应用程序中,该线程可以用于处理更多的传入请求。但我不理解的是它如何使我的控制台应用程序受益。 - Amit Kotha
5
您的控制台应用程序在等待长时间运行的I/O完成时是否有可以执行的有用工作?如果有,那么它可能会受益。如果没有,那么可能不会。这与其他应用程序类型完全相同。但正如弗雷德里克的第一个评论所暗示的那样,它完全取决于您特定控制台应用程序的性质。不要假设存在普遍的好处可以获得。 - Damien_The_Unbeliever
1个回答

1
使用 async/await,您可以编写更少的代码,并且与使用传统任务的异步编程方法相比,您的代码将更易于维护。 async/await 是 BackgroundWorker 的更新替代品,后者已被用于 WinForms 应用程序。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接