多线程编程(一)线程的启动与停止

该部分内容讲解线程如何启动,又该如何停止。
线程的启动
        一个线程对象在初始化完成之后,调用start()方法去启动该线程。此时将会有两个线程在运行,一个是调用start()方法的当前线程(主线程),另一个则是创建的那个线程。通过下面jdk源码的注释可以看到。

        我们还可以看出来,主线程调用start()方法的同时去通知java虚拟机,之后虚拟机去创建线程调用run()方法。
 
如何优雅的停止线程
         线程的创建是很简单的,但停止一个线程是否也是如此呢?
         停止线程可以用stop()方法,但该方法被标注已过期。官方也不建议使用该方法。这又是为什么呢?因为stop()方法会立即杀死该线程,这样的话线程后续应有的操作将会终止,最终导致数据不一致问题。
        正确的停止线程的方法通常是使用interrupt()这个方法,该方法的使用将在下次课程中和大家分享。

                                                                            

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值