面试是找到好工作很重要的环节,所以要事先作足准备,熟悉各种面试题。今天,华清Java就业老师要给大家分享的Java面试题是:请说出与线程同步以及线程调度相关的方法。
在正式开始之前,我们先来回顾一下线程同步和线程调度的基本概念:
线程同步:即当有一个线程在对内存进行操作时,其他线程都不可以对这个内存地址进行操作,直到该线程完成操作, 其他线程才能对该内存地址进行操作,而其他线程又处于等待状态,目前实现线程同步的方法有很多,临界区对象就是其中一种。
线程调度:是指按照特定机制为多个线程分配CPU的使用权.
那么,与线程同步以及线程调度相关的方法有哪些呢?
-wait():使一个线程处于等待(阻塞)状态,并且释放所持有的对象的锁;
-sleep():使一个正在运行的线程处于睡眠状态,是一个静态方法,调用此方法要处理InterruptedException异常;
-notify():唤醒一个处于等待状态的线程,当然在调用此方法的时候,并不能确切的唤醒某一个等待状态的线程,而是由JVM确定唤醒哪个线程,而且与优先级无关;
-notityAll():唤醒所有处于等待状态的线程,该方法并不是将对象的锁给所有线程,而是让它们竞争,只有获得锁的线程才能进入就绪状态;
以上就是就是今天分享的面试题,考察的重点就是对线程同步与线程调度相关的方法的理解,更多Java面试题?
热点新闻