当使用jQuery客户端函数调用MVC控制器方法时,是否需要用异步任务异步来修饰MVC方法,并等待关键字,因为jQuery调用本质上已经是一个异步调用了?
发布于 2014-04-10 10:25:36
HTTP协议总是一样的,在服务器上使用异步代码不会改变,在客户机上使用异步代码也不会改变。
这意味着您可以对服务器上的任何操作使用来自JavaScript的异步调用,不管它本身是否异步。
发布于 2014-04-10 09:17:59
它不依赖于这件事,异步控制器腐烂是另一回事,所做的是在接收到请求后,它以无目的地释放请求线程,这样服务器就可以最大限度地接收请求,任务完成后,它会调用调用它的线程,并返回对它的响应。
异步控制器在执行大量I/O操作时非常有用,因此,我们使用异步控制器,以便在IIS中接收请求后,异步控制器立即释放线程,并在响应准备好返回时再次调用线程。
你可以在这里读到更多:
http://www.codeproject.com/Tips/526099/Asynchronous-Controller-in-ASP-NET-MVC http://msdn.microsoft.com/en-us/library/system.web.mvc.asynccontroller%28v=vs.118%29.aspx
通过使用异步控制器,还可以提高应用程序的性能,您可以在这里更详细地阅读:
http://blog.stevensanderson.com/2010/01/25/measuring-the-performance-of-asynchronous-controllers/
关于jquery,它的目的是在其他线程中(而不是在浏览器Ui线程中)进行操作,以便我们的应用程序保持响应性,例如,如果ajax调用需要2分钟的时间,并且您还没有包含异步:false的jquery,那么您的应用程序将一直停留到ajax调用完成操作为止。但是,如果它的异步,您的应用程序将响应用户。
希望它能帮助和引导你走向正确的方向。)
https://stackoverflow.com/questions/22994729
复制