00:00
那么接下来咱们就模拟守。嗯。我们呢,就在这个Java这个包啊,我来看一下啊。这个位置有一个thread是不是。行吧,那就在这个目录下吧,在这个包下啊,我们去新建一个类。这个呢,我们给它起一个名字啊,叫thread。T14。行吧,说要删了吗。对不对,哎,在这建一个类啊就幺四好了,那接下来咱们来看一下啊,守护线程,我们简单的在这儿呢,给大家。写写代码啊,大家认识认识啊,以后呢,可能会用到这个东西守护线程,比如说现在呢,我们在这儿有一个线程,这个线程我们就叫做。哎呀,叫什么呀,叫。Roundable。
01:01
或者叫贝吧备份吧。备份数据的一个线程行吧。就随便写吧,啊,去继承谁呢,Thread行。然后写一下乱方法。先写个死循环。数据备份行吧,特呢等于零。啊,然后在这输出什么呢?嗯,输出thread.current thread.get name当前现身的名字,然后呢,加上这个箭头。那再加上去一个什么呀,叫做加加I。行吧,哎,然后呢。睡眠一下。啊。就这么一个东西吧,啊,简单写一下,这是个死循环呗,是不是,那接下来我们在这儿呢,怎么去写这个程序呢,大家看看啊。我们创建一个线程。那么这个线程对象呢,扭出来啊,叫做数据备份的这么一个线程,那扭出来之后呢,我们这个线程啊,在这个位置上我们调用什么呀,它的set name这个方法我们就经常叫啊备份数据的线程啊,叫做备份数据的线程啊模拟一下。
02:16
啊,然后呢,我们接下来T一点什么start启动就完事了,那接下来这个地方是一个主线程对吧,主线程是用户线程。对不对,那么现在呢,我在这里写个负二循环,因此I等于零,I小于什么呀,1000。I干什么呢?I别小于1000了,I小于10吧,I加加,每循环一次呢,我们先点out打印,打印输入什么呢?就是说写上thread.current thread.get name当前的名字,然后呢,再加个箭头,然后呢,我们在这里加一个I值。然后right.sleep给他睡一会儿,睡个一秒吧,这样的话循环十次应该十秒是不是?好,这个代码很很简单吧,好,我们看当前程序,如果这个线程是一个用户线程对不对,现在我并没有设置这个线程是守护线程吗?
03:05
哎,那这个是一个T线程,是一个用户线程,我们的这个主线程也是个用户线程,大家看当前这个程序是什么样的,因为下面这毕竟是死循环嘛,它不会结束,你看。你看啊。咱们走一下啊。啊啊。是吧,循环吧,循环是吧,循环十次之后,这个闷方法就结束了。对吧,你看闷方法结束之后,这个备份线程它没有接触。对不对,哎,那如果说你希望这个闷方法只要一结束,哎,只要你希望闷方法一结束,下边这个备份线程怎么着啊,它也结束。那你该怎么做呢?诶,你可以把这个叫做备份线程啊,给它设置成一个守护线程,非常之简单啊,这个知识点很很很小。来我们设置一下啊,在启动之前啊,启动线程之前,将线程设置为守护线程,非常之简单,t.STEM。
04:02
这个方法写个处就行了。就这一个方法,你只要设置这个T线程为守护线程,或者叫后台线程之后,那么一旦设置完,接下来在你这个线程,只要你的主线程,你的用户线程,只要全部结束,这个守护线程,虽然你是个死循环,但你也会结束。你是死军官,你也不好使,为啥?因为你是个守护者,守护者守护,守护的意思就是主线程在,你有必要啊,不是主线程啊,用户线程在,你有必要守护,用户线程没了,你就没必要守护了,就这意思啊,就这意思,所以我们来看这个死循环,它会不会自动结束,这个Y要出,这个死循环会不会结自动结束看看啊,这不用你管的啊,来运行一下。嗯,你看结束了。是不是,所以这这个主线程实际上是用户线程,这个用户线程只要一结束了,它没有用户线程了,那守护线程就没有必要去守护了,它守护线程会自动退出。
05:10
即使是死循环也会自动退出啊,在这即使是死循环啊,但由于什么呀,由于该线程。是守护者啊,也会当用户线程结束。啊,守护线程自动终止,自动终止啊,行这个了解一下,就这么一个方法,各位想把这个线程变成守护线程,只要调这个方法就行啊,Set这个方法就可以了啊。
我来说两句