抛出空指针异常是否会导致整个spring boot服务停止

本文探讨了多线程环境中线程A出现空指针异常是否会影响线程B及其他线程的执行情况。结论显示,异常仅限于抛出异常的线程本身,不会干扰其他线程的工作流程。同时,讨论了在微服务环境下,启动过程中的异常可能导致服务无法正常启动,而在运行时通过HTTP接口引发的异常则不会影响服务的整体稳定性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

多线程中,线程A中抛出空指针异常,会不会影响线程B的运行。会不会让整个程序停止。

结果:定时任务是多个线程执行的,其中一个定时任务抛出空指针异常。这个任务终止,但是不会影响其他的定时任务。

异常只会影响当前线程的执行,如果多线程的系统。只会停止抛出异常所在的线程,其他线程不受影响。

在微服务中呢?

如果是服务启动时候就调用到接口,那么抛出异常后会使得服务启动不起来。
如果在服务启动的时候,不会触发,那么就不会抛出空指针异常。如果通过

http接口进行调用导致接口异常,只会抛出空指针异常。不影响服务。

微服务是主进程(main)进程。

任何一个http请求,tomcat都会有一个线程对应去处理这个请求。也就是我们所谓的链接。
通过日志打印可以看出,线程id是这样的。

http-nio-8094-exec-2

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值