首页 > 学院 > 开发设计 > 正文

多线程同步的几种方法

2019-11-08 18:48:39
字体:
来源:转载
供稿:网友

 1.多线程同步的几种方法

wait(): 使一个线程处于等待状态,并且释放所持有的对象的 lock 。

sleep(): 使一个正在运行的线程处于睡眠状态,是一个静态方法,调用此方法要捕捉

InterruptedException 异常。

notify(): 唤醒一个处于等待状态的线程,注意的是在调用此方法的时候,并不能确切的唤醒某一个等

待状态的线程,而是由 JVM 确定唤醒哪个线程,而且不是按优先级。

Allnotity(): 唤醒所有处入等待状态的线程,注意并不是给所有唤醒线程一个对象的锁,而是让它们

2.启动一个线程是用 run() 还是 start()?

启动一个线程是调用 start() 方法,使线程所代表的虚拟处理机处于可运行状态,这意味着它可以

由 JVM 调度并执行。这并不意味着线程就会立即运行。 run() 方法可以产生必须退出的标志来停止一个

线程。

 3.当一个线程进入一个对象的一个 synchronized 方法后其它线程是否可进入此对象       的其它方法 ? 不能,一个对象的一个 synchronized 方法只能由一个线程访问。

4.线程的基本概念、线程的基本状态以及状态之间的关系

线程指在程序执行过程中,能够执行程序代码的一个执行单位,每个程序至少都有一个线程,也就是

程序本身。

java 中的线程有四种状态分别是:运行、就绪、挂起、结束。


上一篇:STL中的set&&map

下一篇:FFT入门

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表