gpt4 book ai didi

multithreading - 正常结束线程的必要性

转载 作者:行者123 更新时间:2023-12-03 12:55:26 48 4
gpt4 key购买 nike

如果我正在构建多线程应用程序,则在我中止该应用程序时,其所有线程将自动被杀死。

如果我希望一个线程的生命周期等于主线程的生命周期,我是否真的需要优雅地结束该线程,还是让应用程序中止以杀死它?

编辑:由于线程规则取决于操作系统,因此我也想听听以下方面的意见:

  • Android
  • Linux
  • iOS
  • 最佳答案

    这取决于线程在做什么。

    当线程被杀死时,它的执行会在代码中的任何时候停止,这意味着某些操作可能无法完成,例如

  • 编写文件
  • 发送网络消息

  • 但操作系统会
  • 关闭所有处理应用程序拥有的
  • 释放所有锁
  • 释放所有内存
  • 关闭所有打开的文件
  • 等...

  • 因此,只要您可以确保所有文件等处于一致状态,就不必担心系统资源。

    我知道 this is true for Windows,如果它在其他操作系统上不一样,我会感到非常惊讶。幸运的是,没有释放所有资源的应用程序可能影响整个系统的时间早已一去不复返了。

    关于multithreading - 正常结束线程的必要性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31110543/

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