java多线程

一、实现多线程的方式:

1、通过继承Thread类实现

 2、通过实现runnable接口

 

 

 3、通过匿名内部类的方式创建

 

 二、线程安全

1、线程同步

  1. 同步代码块。

    synchronized(同步锁){

       需要同步操作的代码

     }

    同步锁可以为任意对象

    多个线程要使用同一把锁

   2. 同步方法。

    public synchronized void method(){

      可能会产生线程安全问题的代码

    }

    对于非static方法,同步锁就是this

    对于static方法,我们使用当前方法所在类的字节码对象(类名.class)

   3. 锁机制。

   java.util.concurrent.locks.Lock 机制提供了比synchronized代码块和synchronized方法更广泛的锁定操作, 同步代码块/同步方法具有的功能Lock都有,除此之外更强大,更体现面向对象

   public void lock() :加同步锁。

    public void unlock() :释放同步锁

   

 

 

  

 

  

posted @ 2020-05-21 09:54  caoyp  阅读(119)  评论(0编辑  收藏  举报