【发布时间】:2018-05-30 03:14:47
【问题描述】:
我正在寻求一些关于多线程/Web 服务的建议,以及我是否应该/如何使用其中之一来解决我的问题。
我的 c# asp 站点上有一个按钮,它执行大量 api 调用,该过程可能需要几分钟。 我想把这个过程分开,这样它就可以“在后台”执行,并且不会影响用户体验。 这个过程紧紧缠绕在我当前的项目中,因此将代码拆分到一个单独的 Web 服务项目中并不容易。
所以..
- 如果我运行以下线程代码,如果用户杀死浏览器,它会成功执行吗?我有什么问题/考虑?
线程thread = new Thread(new ThreadStart(RefreshData));
如果上述方法不起作用,我可以通过向同一个项目中添加一些 [Web 方法] 并从同一个项目中调用它们来完成这项工作吗? (如果是的话 - 有什么建议吗?)
如果我这样做,它会在另一个 iis 线程中成功执行它们吗?即.. 如果用户终止了他们的浏览器 - 我可以确定服务中的进程将成功完成吗?
另外,我计划在 AWS 上托管该网站 - 因此,如果从这个角度考虑,任何见解也会有所帮助。
提前谢谢帮..
【问题讨论】:
标签: c# multithreading amazon-web-services webmethod