首页 > 代码库 > Java自学资料——线程

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() 测试线程是否处于活动状态。
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培训首选成都传智播客

Java自学资料——线程