是否可以在Web服务中创建一个具有多个线程的函数,一个向用户返回值,另一个继续处理事务?我之前从未使用任何多线程,似乎我也可以通过异步运行事务来实现。还没有编写代码。在开始编码之前,试着看看是否可能。
答案 0 :(得分:1)
虽然您可以启动线程等,但与其他任何.NET应用程序一样,您必须考虑您的操作环境。
任何长时间运行的进程都应该真正传递到另一个进程,比如Windows服务,因为Web服务器工作进程可以并且确实可以回收并随之运行。您还要绑定可用于进一步为Web应用程序提供服务请求的线程。
关于Paul Abbot所说的,原则上如果您有办法将某种工作ID返回给客户,您可以在另一个请求中轮询处理的状态,这可以在同一个流程中应用或者在同一个流程中应用外部服务中的流程。