我有 mvc 操作方法,其中 while 循环正在运行,我想在单击另一个按钮时停止 while 循环,因此我维护了一个标志并将其设置为 false 以中断循环。
bool flag = true;
public async Demo()
{
while(flag == true)
{
do something...
}
}
现在单击按钮我正在调用一个操作方法来停止 while 循环 -
public ActionResult StopLoop()
{
flag = false;
Return View("Index")
}
但要花近一分钟的时间才能达到这个目的StopLoop
单击按钮后。
为什么 ?可能全部都在同一个 UI 页面上并且共享相同的homecontroller
我能做什么?
我在循环启动时有一键请求上有 2 个按钮,我想要
单击另一个按钮请求循环停止。
如果您说一个请求启动 while 循环,而您希望另一个请求停止它,那么对于 ASP.NET MVC 来说这是不可能的,因为它是无状态的。一旦视图返回,您的 while 循环就不再运行。就您而言,看起来只需要一分钟StopLoop
被击中的方法。真正发生的情况可能是,您的 while 循环可能无限运行,IIS 会终止它,然后处理停止循环请求。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)