您现在的位置是:首页 > 正文

synchronized

2024-02-01 00:46:23阅读 2

1、synchronized关键字的作用域有二种: 1)是某个对象实例内,synchronized aMethod(){}可以防止多个线程同时访问这个对象的synchronized方法(如果一个对象有多个synchronized方法,只要一个线程访问了其中的一个synchronized方法,其它线程不能同时访问这个对象中任何一个synchronized方法)。这时,不同的对象实例的synchronized方法是不相干扰的。也就是说,其它线程照样可以同时访问相同类的另一个对象实例中的synchronized方法; 2)是某个类的范围,synchronized static aStaticMethod{}防止多个线程同时访问这个类中的synchronized static 方法。它可以对类的所有对象实例起作用。

 

2、除了方法前用synchronized关键字,synchronized关键字还可以用于方法中的某个区块中,表示只对这个区块的资源实行互斥访问。用法是: synchronized(this){/*区块*/},它的作用域是当前对象;

 

 

3、synchronized关键字是不能继承的,也就是说,基类的方法synchronized f(){} 在继承类中并不自动是synchronized f(){},而是变成了f(){}。继承类需要你显式的指定它的某个方法为synchronized方法;

网站文章

  • protobuf协议简介

    protobuf协议简介

    Protocol Buffers(简称PB)是一种轻便高效的结构化数据存储格式,可以用于结构化数据串行化,或者说序列化。它可用于通信协议、数据存储等领域的语言无关、平台无关、可扩展的序列化结构数据格式。最初由Google开发并开源,目前已经广泛应用于各种场景,如RPC通信、数据存储、配置文件等。

    2024-02-01 00:46:17
  • zookeeper单机和同一台机器(即伪集群)上搭建集群部署 及错误Error contacting service. It is probably not running

    zookeeper单机和同一台机器(即伪集群)上搭建集群部署 及错误Error contacting service. It is probably not running

    在同一台机器(即伪集群)上,启动三个zookeeper,三个分别使用不同的配置文件Zookeeper的单机版安装从官网上下载zookeeper的安装包1 准备:安装之前请自行安装jdk(如java8)2 使用wget 命令或者xshell editplus工具远程上传tar包到Linux(1)使用wget 命令下载zookeeper安装包到linux环境下命令: wg...

    2024-02-01 00:45:47
  • SpringBoot启动过程源码解析

    SpringBoot启动过程源码解析

    否则,应用类型为WebApplicationType.SERVLET。

    2024-02-01 00:45:41
  • centos7普通用户对文件权限受限解决方法

    centos7普通用户对文件权限受限解决方法

    Centos7中的普通用户与Root用户之间的权限关系,以及如何给用户赋权。

    2024-02-01 00:45:33
  • 01.快速创建多个连续的,带a标签的无序/有序列表:

    01.快速创建多个连续的,带a标签的无序/有序列表:

    一、输入下列格式 ul:表示无序 li:表示一个列表 a:表示带标签的列表 {}:表示每个列表之内相同的内容 >:号表示优先级 *3:表示创建三个,*x表示创建x个标签 二、输入以上内容后按下Tab键。自动出现如下界面(忽略内容只看结构即可): 三、运行后显示类似的界面,为无序列表 ...

    2024-02-01 00:45:27
  • 《C Primer Plus》(第六版) 第04章 编程练习

    《C Primer Plus》(第六版) 第04章 编程练习

    《C Primmer Plus》 (第6版)第04章 所有编程练习

    2024-02-01 00:44:58
  • 【LeetCode解题报告】《算法基础006_日期算法》- Java

    【LeetCode解题报告】《算法基础006_日期算法》- Java

    目录一、一周中的第几天1.题目2.分析3.代码二、一年中的第几天1.题目2.分析3.代码三、日期之间隔几天1.题目2.分析3.代码 一、一周中的第几天 1.题目 1185.一周中的第几天 给你一个日期...

    2024-02-01 00:44:50
  • 【2020总结】脚踏实地,仰望星空

    【2020总结】脚踏实地,仰望星空

    文章目录跟着我的jo步一年的变化感谢总结 跟着我的jo步   转眼已是12月底了,趁着这次活动,正好对自己这一年在CSDN和日常学习中的感想写出来,做一个记录,方便在以后回想起2020年时,不是平平无...

    2024-02-01 00:44:45
  • Android基础教程11 应用栏2

    Android基础教程11 应用栏2

    上一篇我们实现了日记的保存,本篇我们就日记的删除功能进行实现。首先我们在NoteItemFragment中定义一个接口,用来实现日记保存与删除的功能。private NoteItemListener noteItemListener; /** * @param noteItemListener 传入Activity的context */ public vo...

    2024-02-01 00:44:17
  • Oracle中drop、truncate和delete的区别

    转载地址:https://www.cnblogs.com/zhizhao/p/7825469.html原作者的格式看的我实在难受,不直观,整理了一下,如果想看最全的,看原作者的。一、deletedelete是DML,执行delete操作时,每次从表中删除一行,并且同时将该行的的删除操作记录在redo和undo表空间中,以便进行回滚(rollback)和重做操作,但要注意表空间要足够大,...

    2024-02-01 00:44:11