• 技术文章 >java >java基础

    同步在java中的应用

    小妮浅浅小妮浅浅2021-02-18 17:42:12原创2154

    本教程操作环境:windows7系统、java10版,DELL G3电脑。

    1.概念

    是一种典型的请求-响应模型,当请求调用一个函数或方法后,需等待其响应返回,然后执行后续代码。同步的特征便是「有序」,当各个过程都执行完毕,最后返回结果。

    2.同步原理

    当有多个线程要同时访问一个变量或对象时,如果这些线程中既有读又有写操作时,就会导致变量值或对象的状态出现混乱,从而导致程序异常。

    举个例子,如果一个银行账户同时被两个线程操作,一个取100块,一个存钱100块。假设账户原本有0块,如果取钱线程和存钱线程同时发生,会出现什么结果呢?取钱不成功,账户余额是100。取钱成功了,账户余额是0,那到底是哪个呢?很难说清楚。因此多线程同步就是要解决这个问题。

    3.实例

    synchronized关键字

    使用synchronized关键字我们可以实现同步代码块

    synchronized(同步监视器){
    //需要进行同步的代码块
     
    }

    以上就是在java中同步的应用,在学习的时候注意区分和异步的区别,在合适的使用场景下,选择合适的方法。

    专题推荐:java,同步
    上一篇:java异步的使用 下一篇:java Date类的使用方法

    相关文章推荐

    • java压缩流的压缩与解压• Stream函数在java中的使用• java中Stream创建的方法• java Stream结合函数方法• Stream在java里的终止• java字符串的格式化输出• java异步的使用

    全部评论我要评论

    © 2021 Python学习网 苏ICP备2021003149号-1

  • 取消发布评论
  • 

    Python学习网