zoukankan      html  css  js  c++  java
  • 线程安全问题出现 的根本原因和解决方案

    线程安全问题出现的根本原因:
        1. 必须要存在两个或者两个以上的线程共享着一个资源。
        2. 操作共享资源的代码必须有两句或者两句以上。



        1. 同步代码块
            synchronized(锁){
                需要被同步的代码
            }
                  
        2. 同步函数。  
            修饰符 synchronized 返回值类型   函数名(形参列表..){

            }
        注意:
            1. 同步代码块的锁可以是任意的对象。 同步函数的锁是固定 的,非静态函数的锁对象是this对象。 静态函数的锁对象是class对象。
            2. 锁对象必须是多线程共享的对象,否则锁不住。
            3. 在同步代码块或者是同步函数中调用sleep方法是不会释放锁对象的,如果是调用了wait方法是会释放锁对象的。




  • 相关阅读:
    Exp7 网络欺诈防范
    Exp6 信息搜集与漏洞扫描
    Exp4 恶意代码分析
    Exp2 后门原理与实践
    PC平台逆向破解实验报告
    See You Again——我最后的汇编程序
    表格标签
    ansible环境搭建
    OSPF_1
    Linux的文件管理(8-27)
  • 原文地址:https://www.cnblogs.com/loaderman/p/9994203.html
Copyright © 2011-2022 走看看