gpt4 book ai didi

c# - 同时调用或调用多个方法?

转载 作者:太空狗 更新时间:2023-10-29 19:50:27 24 4
gpt4 key购买 nike

如何在我的 asp.net 页面加载中同时调用多个方法?我有 4 种方法可以在我的页面加载事件中调用。但我想调用所有 4 种方法,而不是等待第一种方法完成后再调用第二种方法。

如何在 asp.net 4.0 中实现这一点?

最佳答案

首先,重要的是要知道您正在做的事情是否明智。如果它们都受 CPU 限制,那么不要这样做,IMO; Web 服务器已经是高度线程化的,并且通常是一个繁忙的开始。您很有可能会通过使用多核来减慢整个过程。不过,对于 1 个用户来说,它看起来很棒!

如果您受 IO 限制,那么有任意数量的方法可以做到这一点;首选是使用您正在与之交谈的内置异步方法,因此您可以使用 IOCP 而不是常规线程。因此,对于 NetworkStream,您可以使用 BeginRead(...) 等。

然后您需要将所有内容连接在一起。更多方式;我个人倾向于使用 Monitor.WaitMonitor.Pulse,因为这样可以避免使用非托管代码(许多等待句柄实际上是操作系统提供的)。

另请注意:线程/并行与许多有趣的失败方式捆绑在一起;通常你只需要过度担心用于同步的静态方法/数据,但是如果你有多个线程在一个请求中做事情:注意颠簸......那里很多。

.NET 的下一个版本旨在使延续变得更加容易;我需要看一下我们如何轻松地将当前的实验代码应用到 IOCP 场景。

关于c# - 同时调用或调用多个方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5298315/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com