gpt4 book ai didi

.net - 如何确保应用程序结束时后台线程结束?

转载 作者:行者123 更新时间:2023-12-03 13:18:05 24 4
gpt4 key购买 nike

我有一个带有后台线程的asp.net应用程序。线程在应用程序启动时启动,在应用程序结束时正常停止。我在共享主机上运行网站。不幸的是,有时应用程序在结束时不会触发Application_End事件。我认为无论如何线程都将被杀死,但事实并非如此。我目前有4个线程在后台运行。从上次应用程序启动起三次,从当前应用程序 session 启动一次。在应用程序结束时,如何确保关闭线程?线程是否可以检查应用程序已重置还是已重置?还是有一种方法可以在应用程序启动时检查这些恶意线程并杀死它们?提前致谢。

最佳答案

使用ThreadPool.QueueUserWorkItem()在后台执行您的代码,该代码将在AppDomain卸载时结束。根据标签,我假设您使用的是背景工作人员,建议您改用此方法。 (考虑添加示例代码以得出更好的答案。)

托管线程池:http://msdn.microsoft.com/en-us/library/0ka9477y.aspx

前景/背景线程:http://msdn.microsoft.com/en-us/library/h339syd0.aspx

关于.net - 如何确保应用程序结束时后台线程结束?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3464548/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com