我有一个Web服务,如果操作超过10秒,我必须调用数据库操作,然后我需要退出操作和回滚。我的理解是,这只能通过生成一个线程来执行冗长的进程,然后在花费的时间超过一定时间后终止线程来完成。你能否建议如何做到这一点,或者指出处理类似情况的例子。在asp.net和桌面应用程序中的线程是否被认为是相同的,我可以使用桌面应用程序的线程概念并将其应用于Web服务,或者是否有任何不同需要考虑。
由于
答案 0 :(得分:0)
我现在可以告诉你这可能是一个严重的问题。在没有合作的情况下终止线程可能会产生各种未定义和意外的行为。
但是如果你真的想这样做,在ASP.NET中启动后台线程就像一个.NET桌面应用程序。 John对于线程与桌面应用程序不同的含义仅适用于ASP.NET引擎在内部处理请求的方式。你真的不需要担心这个方面(除非你阻止每个请求)。