Java之多线程(未更)

进程和线程

run() Start()

线程创建的方式

  Thread start0,本地方法:java无权使用,交给底层的c处理  private native void start0();

  Runable   函数式接口 lambda

  Callable  可以有返回值

静态代理  new Thread(Runable).start();

Lambda表达式

  函数式编程

  避免内部类定义过多

  new Thread(()->{

  System.out.println();

  )}.start();

  手动推导一遍lambda表达式

线程的状态  新建 就绪 运行 阻塞 死亡

 

线程同步

多个对象操作同一个资源,开发

队列+锁

Synchronized

  同步方法  弊端:锁太多了

  同步代码块(常用)

  第一个拿到锁,后面就要排队

  死锁

Lock(优先级高)  ReentrantLock:lock trylock unlock

 

线程通信

缓冲区:消息队列

标志位:红绿灯

wait()

notifyAll();

 

线程池

池化技术

池的大小

最大连接数

保持时间

……

posted @ 2021-02-26 03:13  头秃1997  阅读(53)  评论(0)    收藏  举报