java线程编程常用方法

1.join

让线程等待一个线程完成的方法。

实例:

JoinThrea jt =new JoinThread("被join的线程");

jt.start();

jt.join();


使用join方法后,只有jt线程执行完后,才能执行其他的线程。

2.后台线程setDaemon(true)

在后台运行,为其他线程提供服务。JVM的垃圾回收线程就是典型的后台线程。前台线程都死亡后,后台线程也会死亡。

实例:

DaemonThread t = new DaemonThread();

t.setDaemon(true);

t.start();


3.线程睡眠sleep

使正在执行的线程暂停一段时间,并进入阻塞状态。用法:Thread.sleep(毫秒数);


4.线程让步:yield

暂停当前正在执行的线程,但是并不阻塞线程,只是让线程处于就绪状态,可能再次调度时,该线程又处于运行态了。用法:Thread.yield()


5.改变线程优先级setPriority

Thread提供了setPriority()与getPriority()方法来设置和返回线程的优先级,setPriority的参数是1~10之间的整数。


6.线程安全,即线程同步

(1)同步代码块synchronized(obj){里面放同步的代码},其中obj是同步监视器。例如银行账户必须要同步,代码如下

(2)同步锁Lock

有ReadWriteLock(读写锁)、ReentrantLock(可重入锁),使用Lock对象可以显示的加锁、释放锁,用法如下



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值