JAVA多线程
饺子0778
明光桥高级职业学院本硕
展开
-
JAVA多线程(四)线程协作通信和线程池
线程协作 线程通信问题 方法名 作用 wait( ) 线程一直在等待,直到其他线程通知;和sleep不同,会释放锁 wait(long timeout) 指定等待的毫秒数 notitfy( ) 唤醒一个处于等待状态的线程 notifyAll( ) 唤醒同一个对象上所有调用wait方法的线程 ,优先级别高的线程优先调度 注意:都是Object类的方法,都只能在哪同步方法或者同步代码块中使用,否则会抛出异常。 并发协作模型——生产者消费者问题 解决方法: 管程法 生产者:负责生原创 2020-06-09 18:05:16 · 200 阅读 · 0 评论 -
JAVA多线程(三)线程同步, CopyOnWriteArrayList,死锁,Lock锁
线程同步 多个线程操作同一个资源 形成条件:队列 + 锁(synchronized) 三大不安全案例 不安全的买票 //不安全的买票 //线程不安全 有负数,有同时抢到同一张票 public class UnsafeBuyTicket { public static void main(String[] args) { BuyTicket buyTicket=new BuyTicket(); new Thread(buyTicket,"wang")原创 2020-06-08 21:46:04 · 486 阅读 · 0 评论 -
JAVA多线程(二)Lambda表达式 线程的五大状态和状态观测 优先级和守护线程
Lambda表达式(函数式编程) 函数式接口:只含有唯一一个抽象方法的接口就是函数式接口。 对于函数式接口,可通过lamda表达式来创建该接口的对象。 /* 推导Lamda表达式 */ public class TestLambda1 { //3.静态内部类 static class Like2 implements ILike{ @Override public void lambda() { System.out.printl原创 2020-06-08 17:48:21 · 357 阅读 · 0 评论 -
Java 多线程(一)线程的创建Thread,Runnable,Callable &&静态代理
基本概念 程序:指令和数据的集合。 静态。 Process 进程 :执行程序的一次执行过程。 动态。 系统资源分配的单位 Thread 线程 : 一个进程中至少包含一个线程。 CPU调度和执行的单位。 线程的创建——Thread,Runnable,Callable Thread类 Runnable接口 Callable接口(了解) Thread类 //创建线程方式一:继承Thread类,重写run方法 ,调用start开启线程 //总结:注意 线程开启不一定能立即执行,由CPU调度执行 pu原创 2020-06-07 17:17:11 · 287 阅读 · 0 评论