Java自学资料——线程
【转】传智播客成都java培训中心学员笔记。
线程:
static int MAX_PRIORITY 线程能够具有的最高优先级。
static int MIN_PRIORITY 线程能够具有的最低优先级。
int NORM_PRIORITY 分配给线程的默认优先级。
线程不做严格的要求。
可是: 至少得知道 创建和启动线程的两种方式;并能区分出两种的异同;
static Thread currentThread()
setName(String name)设置当前线程的名字
getName();获得线程名字
setPriority(int i);设置优先级
int getPriority() 返回线程的优先级。
boolean isAlive() 測试线程是否处于活动状态。
线程:
static int MAX_PRIORITY 线程能够具有的最高优先级。
static int MIN_PRIORITY 线程能够具有的最低优先级。
int NORM_PRIORITY 分配给线程的默认优先级。
线程不做严格的要求。
可是: 至少得知道 创建和启动线程的两种方式;并能区分出两种的异同;
static Thread currentThread()
setName(String name)设置当前线程的名字
getName();获得线程名字
setPriority(int i);设置优先级
int getPriority() 返回线程的优先级。
boolean isAlive() 測试线程是否处于活动状态。
boolean isDaemon() 測试该线程是否为守护线程。
void setDaemaon(true):表示设置后台线程
sleep(休眠),join(抢),yield(礼让),
启动方法: start();
new Thread(Runnable r).start();
new Thread的子类().start();
同步:三种方法:
同步代码块:
synchronized(obj){
newObject()
//obj表示同一个监听对象
//须要同步的代码
}
同步方法:
synchronized 方法。。
。
。。。。。。
。。。
{
}
可重入锁:
ReentrantLock
class A{
private final ReentrantLock lock = new ReentrantLock();
public void show(){
lock.lock();//锁了
try{
//可能出现不同步的代码
}finally{
lock.unlock();//是否锁
}
}
}
线程的通讯: 生产者与消费者关系
死锁:开发中药避免死锁
笔试面试的时候。装B的公司喜欢考;
线程的和进程的概念:面试前多背
另一个笔试不多的,可是也是他们常常拿出来炫耀的:
生产者和消费者
同步:
Object里的三个方法:
wait();//等待
notify();//唤醒一个线程。
自己不能唤醒自己
notifyAll();//唤醒全部的线程
成都传智播客,专业的java培训机构,成都android培训。成都java培训首选成都传智播客。