采纳答案成功!
向帮助你的同学说点啥吧!感谢那些助人为乐的人
若在main中创建一个子线程threadA,若threadA中抛出异常停止运行,为什么main线程不会停止运行?在上一个章节中,老师不是说过子线程挂了,进程也会挂吗?这该怎么理解?
同学好,子线程抛出异常不会影响主线程的执行的呢,子线程相当于是一个副本,执行成功与否不需要main线程关心的,除非main线程主动去关心。上一个章节里面是GC,里面没讲到子线程挂了主进程就挂了吧,具体是哪个地方讲到了呀?
上面同学说的应该是上一小节8-1的10:52,您说了“线程只是进程的不同执行路径,某一个线程挂,它所属的进程也会挂掉。” 我认为这个是不是分情况,如果程序本身是单线程,那么线程崩溃就意味着进程崩溃;如果是多线程,子线程崩溃不一定会造成进程崩溃。但是线程之间是共享地址空间的,没有自己单独的内存地址空间,如果指针数据的错误导致任何同地址空间内其他线程的崩溃,也会导致进程的崩溃。 不知理解的是否正确,还请老师解答。
同学好,直接看看这篇文章 https://juejin.cn/post/7094946159303049224 ,如果涉及到多线程共享的情况,如果变量是线程不安全的,则有可能造成连锁崩溃
登录后可查看更多问答,登录/注册
招聘季即将到来,让百度资深面试官来为你的高薪Offer保驾护航
1.8k 27
2.7k 22
1.3k 15
1.4k 14
1.3k 14