如果ThreadPool线程死亡,会发生什么?

罗杰·约翰逊

如果某个线程由于某种原因而死,或者我在ThreadPool线程上手动调用了“ Abort”,将会发生什么?.NET将重新创建一个新的以填充其插槽,还是线程池最终最终将耗尽线程?

也许这是一个单独的问题,但是线程池是否处理僵尸进程?如果我将一个带有while(true)循环的任务排队到线程池中,它将永远旋转,还是线程池最终将杀死该线程?

因此,真正的问题可能是;如果作业在.NET线程池中从未完成,会发生什么情况。照顾好了吗?

道格拉斯

.NET线程池使用爬山算法来估计在任何时间点都应处于活动状态的最佳工作线程数。如果您杀死了这样一个工作线程,则在下一个检查时将重新创建一个新的工作线程。

关于您的第二个问题:一个非终止任务将被允许无限期地运行。但是,工作线程被认为是后台线程因此,一旦所有前台线程都退出,您的进程也将退出(杀死后台线程)。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

调用通知的线程会发生什么

来自分类Dev

如果线程在关键部分内死掉会发生什么?

来自分类Dev

如果在此代码中将变量i直接传递给线程,会发生什么情况?

来自分类Dev

如果释放它的指针,线程会发生什么

来自分类Dev

返回线程的run()后会发生什么?

来自分类Dev

如果ThreadPool线程死亡,会发生什么?

来自分类Dev

在同步方法内部的线程中的同步块会发生什么?

来自分类Dev

Play框架:当请求超出可用线程时会发生什么

来自分类Dev

如果Python线程在获取锁后死亡,会发生什么?

来自分类Dev

Apache Spark:如果在未广播的工作线程中使用主机对象值会发生什么?

来自分类Dev

如果在ThreadPool线程正在写入文件时关闭应用程序会发生什么情况?

来自分类Dev

如果线程在同步块内引发异常会发生什么

来自分类Dev

在以下多线程场景中会发生什么?

来自分类Dev

什么会导致失败触发,如果失败会发生什么

来自分类Dev

调用exec()时,线程会发生什么情况?

来自分类Dev

如果线程本身调用join()会发生什么

来自分类Dev

如果线程试图获取它已经持有的锁,会发生什么?

来自分类Dev

当被监视的进程在handle_call完成之前死亡时,会发生什么?

来自分类Dev

如果线程执行的函子被移动,会发生什么情况?

来自分类Dev

如果未设置枚举,会发生什么?

来自分类Dev

如果不再引用该对象,那么扩展Thread的“对象的线程”会发生什么?

来自分类Dev

以线程安全的方式从DLL写入文件-但是,如果许多程序使用此DLL会发生什么?

来自分类Dev

如果我在无限循环中启动线程会发生什么?

来自分类Dev

如果线程本身调用join()会发生什么

来自分类Dev

当参考变量“死亡”时,该变量会发生什么?

来自分类Dev

如果一个线程在 java 中重新分配一个变量会发生什么?

来自分类Dev

如果 QTimer 不停止会发生什么

来自分类Dev

如果我安装 Wayland 会发生什么?

来自分类Dev

如果线程处于临界区或进入临界区会发生什么?

Related 相关文章

  1. 1

    调用通知的线程会发生什么

  2. 2

    如果线程在关键部分内死掉会发生什么?

  3. 3

    如果在此代码中将变量i直接传递给线程,会发生什么情况?

  4. 4

    如果释放它的指针,线程会发生什么

  5. 5

    返回线程的run()后会发生什么?

  6. 6

    如果ThreadPool线程死亡,会发生什么?

  7. 7

    在同步方法内部的线程中的同步块会发生什么?

  8. 8

    Play框架:当请求超出可用线程时会发生什么

  9. 9

    如果Python线程在获取锁后死亡,会发生什么?

  10. 10

    Apache Spark:如果在未广播的工作线程中使用主机对象值会发生什么?

  11. 11

    如果在ThreadPool线程正在写入文件时关闭应用程序会发生什么情况?

  12. 12

    如果线程在同步块内引发异常会发生什么

  13. 13

    在以下多线程场景中会发生什么?

  14. 14

    什么会导致失败触发,如果失败会发生什么

  15. 15

    调用exec()时,线程会发生什么情况?

  16. 16

    如果线程本身调用join()会发生什么

  17. 17

    如果线程试图获取它已经持有的锁,会发生什么?

  18. 18

    当被监视的进程在handle_call完成之前死亡时,会发生什么?

  19. 19

    如果线程执行的函子被移动,会发生什么情况?

  20. 20

    如果未设置枚举,会发生什么?

  21. 21

    如果不再引用该对象,那么扩展Thread的“对象的线程”会发生什么?

  22. 22

    以线程安全的方式从DLL写入文件-但是,如果许多程序使用此DLL会发生什么?

  23. 23

    如果我在无限循环中启动线程会发生什么?

  24. 24

    如果线程本身调用join()会发生什么

  25. 25

    当参考变量“死亡”时,该变量会发生什么?

  26. 26

    如果一个线程在 java 中重新分配一个变量会发生什么?

  27. 27

    如果 QTimer 不停止会发生什么

  28. 28

    如果我安装 Wayland 会发生什么?

  29. 29

    如果线程处于临界区或进入临界区会发生什么?

热门标签

归档