常见线程方法

1-暂停Thread.sleep(1000); 表示当前线程暂停1000毫秒 ,但不会释放资源,其他线程不受影响 
Thread.sleep(1000); 会抛出InterruptedException 中断异常,因为当前线程sleep的时候,有可能被停止,这时就会抛出 InterruptedException

2-join,该线程加入主线程,只有该线程结束时,才会向下走

是说如果之前t1.start,t2.start, try t1.join,两个都start,但是万一t2中有个停止,有个if让他停止了,而唤醒resume再join之后,就只有等t1完了才能执行到那行代码让t2继续

并且t.join,既然之前t在sleep,其他的也得等到,一直到t线程结束

3-线程优先级,让线程的竞争cpu的能力改变

t1.setPriority(Thread.MAX_PRIORITY);

t2.setPriority(Thread.MIN_PRIORITY);

4-临时暂停

Thread t2= new Thread(){
            public void run(){
                while(!leesin.isDead()){
                    //临时暂停,使得t1可以占用CPU资源
                    Thread.yield();
                     
                    bh.attackHero(leesin);
                }              
            }
        };

5-守护线程

相当于后勤,当全部都守护了这个进程就没了

 t1.setDaemon(true);

t1.start();

猜你喜欢

转载自blog.csdn.net/Whiteleaf3er/article/details/82590073