zoukankan      html  css  js  c++  java
  • 线程安全,

    线程安全

    Synchronized 线程同步(线程安全处理)

    线程同步的两种方法:

    1:同步代码块

    2:同步方法

    同步代码块:

    synchronized (锁对象) {

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

    }

    同步代码块中的锁对象可以是任意的对象;但多个线程时,要使用同一个锁对象才能够保证线程安全。

    同步方法:

    在方法声明上加上Synchronized

    public synchronized void method(){

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

    }

    同步方法中的锁对象是 this

    静态同步方法: 在方法声明上加上static synchronized

    public static synchronized void method(){

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

    }

    静态同步方法中的锁对象是 类名.class

    Lock接口

    ReentrantLock() 实现类

    lock() 获取锁

    unlock() 释放锁

    public void run(){

        while(true){

           lock.lock();

           if(ti>0){

    System.out.println(Thread.currentThread().getName()+"出售第"+ti--+"张票");

           }

           lock.unlock();

        }

    }

  • 相关阅读:
    mfc启动画面
    个人冲刺第十天
    个人冲刺第九天
    个人冲刺第八天
    个人冲刺第七天
    个人冲刺第六天
    新一周冲刺计划2
    新一周冲刺
    创意1
    团队绩效与目标
  • 原文地址:https://www.cnblogs.com/hhthtt/p/10632626.html
Copyright © 2011-2022 走看看