不能直接在API接口里面用 System.Threading.Thread.Sleep阻塞线程,如果需要延时,要用异步处理。
今天碰到这样的一个坑 在win 10 和 windows server 2008 没问题,但在windows server 2019 就出现以下问题
今天碰到这样的一个坑 在win 10 和 windows server 2008 没问题,但在windows server 2019 就出现以下问题
An error occurred while processing your request.
//错误的写法 [Route("api/TestMethod")] public string TestMethod() { for (int i = 0; i < 3; i++) { System.Threading.Thread.Sleep(1000); } return "返回结果"; }
//正确的写法 [Route("api/TestMethod")] public System.Threading.Tasks.Task<string> TestMethod() { return System.Threading.Tasks.Task<string>.Run(() => { for (int i = 0; i < 3; i++) { System.Threading.Thread.Sleep(1000); } return "返回结果"; }); }