• 技术文章 >Java >Java入门

    java中关于线程同步的理解

    VV2019-12-06 13:53:25原创835

    首先了解什么是线程?

    我们可以在计算机上运行各种计算机软件程序。每一个运行的程序可能包括多个独立运行的线程(Thread)。

    线程(Thread)是一份独立运行的程序,有自己专用的运行栈。线程有可能和其他线程共享一些资源,比如,内存,文件,数据库等。

    当多个线程同时读写同一份共享资源的时候,可能会引起冲突。这时候,我们需要引入线程“同步”机制,即各位线程之间要有个先来后到,不能一窝蜂挤上去抢作一团。

    在线视频教程推荐:java课程

    线程同步的介绍

    线程同步的真实意思和字面意思恰好相反。线程同步的真实意思,其实是“排队”:几个线程之间要排队,一个一个对共享资源进行操作,而不是同时进行操作。

    因此,关于线程同步,需要牢牢记住的第一点是:线程同步就是线程排队。同步就是排队。

    线程同步的目的就是避免线程“同步”执行。

    关于线程同步,需要牢牢记住的第二点是 “共享”这两个字。只有共享资源的读写访问才需要同步。如果不是共享资源,那么就根本没有同步的必要。

    关于线程同步,需要牢牢记住的第三点是,只有“变量”才需要同步访问。如果共享的资源是固定不变的,那么就相当于“常量”,线程同时读取常量也不需要同步。至少一个线程修改共享资源,这样的情况下,线程之间就需要同步。

    关于线程同步,需要牢牢记住的第四点是:多个线程访问共享资源的代码有可能是同一份代码,也有可能是不同的代码;无论是否执行同一份代码,只要这些线程的代码访问同一份可变的共享资源,这些线程之间就需要同步。

    相关文章教程推荐:java快速入门

    以上就是java中关于线程同步的理解的详细内容,更多请关注php中文网其它相关文章!

    声明:本文原创发布php中文网,转载请注明出处,感谢您的尊重!如有疑问,请联系admin@php.cn处理
    专题推荐:java 线程同步 理解
    上一篇:java中实例与对象的区别和联系 下一篇:java中的null是对象么
    大前端线上培训班

    相关文章推荐

    • java实现斐波那契数列的三种方法• java判断字符串是否乱码的方法介绍• java获取当前日期是星期几的方法• java中实例与对象的区别和联系

    全部评论我要评论

  • 取消发布评论发送
  • 1/1

    PHP中文网