0

C# .net 中的常规请求和异步请求之间的性能差异(如果有)是什么?

4

3 回答 3

1

取决于您的用例。虽然在简单场景中使用异步不会立即带来性能优势,但在更复杂的场景中以及对于可扩展性而言,它可能至关重要。

例如,向多个服务器发送多个请求显然最好并行完成,这可以使用异步来处理。

关于可伸缩性,考虑一个使用同步 Web 请求与慢速外部服务器通信的 Web 应用程序。由于 IIS 只分配有限数量的线程来服务来自用户的请求,因此当用户数量增加时,存在所有用户线程在等待外部 Web 请求时被阻塞的风险。这意味着某些用户请求将被 IIS 拒绝。

于 2012-07-31T08:16:48.783 回答
0

这取决于,在 asp.net 中你必须使用同步(直到 4.5);但是在 Windows 窗体或任何其他类型的 C# 项目中,它可以防止线程被暂停。调用 ASYNC 完成事件将允许您更新正确的信息,而无需暂停 UI 或主线程。

于 2012-07-31T05:40:38.263 回答
0

在异步模式下,服务器只能回复你想要的,这样可以最大限度地减少网络流量,从而最大限度地减少响应时间,提高用户体验。

于 2012-07-31T05:45:13.713 回答