【发布时间】:2010-05-21 22:48:08
【问题描述】:
当用户保存一些数据时,我想分离一个后台线程来更新我的索引并做一些其他随机的事情。即使在这个索引中存在错误,用户也无法对此做任何事情,因此强制主线程等待后台线程完成是没有意义的。我是从 ASP.NET 进程中执行此操作的,所以我认为我应该能够执行此操作(因为退出的主线程不会终止该进程)。
当我在后台线程的方法中设置断点时,主线程似乎也停止了。这只是visual studio调试器的产物,还是主线程真的要等到后台线程停止才返回?
【问题讨论】:
-
在 ASP.NET 中使用线程要非常小心。请求完成后线程可能会尝试执行。这时,请求消失了,页面已经被释放等等,你可能依赖的任何状态都不再有效。它也可能无助于提高性能。
标签: c# multithreading