Java多线程总结

来源:互联网 发布:js生成随机整数 编辑:程序博客网 时间:2024/06/10 05:47

前言

Life’s a climb, but the view is great.

1.创建线程的三种方式

1.1 继承Thread

1.2 实现Runnable

1.3 实现Callable

2.线程的状态

2.1 五种状态:创建,就绪,运行,阻塞,死亡

2.2 终止线程:自然终止、外部干涉

2.3 阻塞:join、yield、sleep

sleep方法与wait方法的区别:两则从属的类不同
sleep : 休眠 不释放锁 从属于Thread类
wait :等待 释放锁 从属于Object类

3.线程的信息

Thread.currentThread()当前线程,获取名称,设置名称,设置优先级,判断状态

4.线程同步(对同一份资源)

为什么使用同步?
多线程对同一份资源的访问造成的不安全性。为了保证资源的准确和安全我们才需要加入同步。

4.1同步方法

修饰符 synchronized 方法名()
{
方法体
}

4.1同步块

synchronized(引用类型|this|类.class){
}

注意:同步过多容易造成死锁

五、生产者消费者模式

六、任务调度

Timer ,ScheduledExecutor 等

0 0