文档章节

java多线程 - 同步

chris_2009
 chris_2009
发布于 2016/03/28 16:53
字数 252
阅读 8
收藏 0

synchronized关键字锁的对象可以是方法、变量、类和当前实例。synchronized不能被继承,子类将自动去除synchronized关键字(public synchronized void xxx()变为public void xxx())

  1. 方法
  • 同一实例当xxx()方法被访问时,该实例内的任何其它标有synchronized关键字的方法都不能被访问
public synchronized void xxx(){  
    ...  
}  
  • 对于该类的所有实例同一时间只有一个实例可以访问该方法
public synchronized static void xxx(){  
    ...  
}  
  1. 变量:变量a获得了同步锁,任何持有a的实例,同一时间只有一个实例可以访问该区块。变量对象锁
synchronized(a){  
...  
}  
  1. 类:线程到达该区块时,对于类xxx的多有操作包括静态变量和方法都不能操作。类对象锁
synchronized(xxx.class){  
   ...  
}  
  1. 当前实例:线程到达该区块时,该实例的所有操作将被锁住,直到该区块执行完毕。实例对象锁
synchronized(this){  
  ...  
} 
  1. 扩展阅读:synchronized

© 著作权归作者所有

chris_2009
粉丝 3
博文 10
码字总数 8066
作品 0
深圳
高级程序员
私信 提问
浅谈Java中的ThreadLocal的多线程应用问题

什么是ThreadLocal?首先要说明的一点是ThreadLocal并不是一个Thread,而是Thread的局部变量。在JDK 1.2的版本中就提供java.lang.ThreadLocal,ThreadLocal为解决多线程程序的并发问题提供了...

小欣妹妹
2017/10/23
123
0
java面试必备之ThreadLocal

按照传统的经验,如果某个对象是非线程安全的,在多线程环境下对象的访问需要采用synchronized进行同步。但是模板类并未采用线程同步机制,因为线程同步会降低系统的并发性能,此外代码同步解...

编程老司机
2018/05/16
0
0
synchronized与ThreadLocal

synchronized是实现java的同步机制。同步机制是为了实现同步多线程对相同资源的并发访问控制。保证多线程之间的通信。 同步的主要目的是保证多线程间的数据共享。同步会带来巨大的性能开销,...

bigYuan
2013/07/18
609
2
Java多线程学习(二)synchronized关键字(2)

系列文章传送门: Java多线程学习(一)Java多线程入门 Java多线程学习(二)synchronized关键字(1) java多线程学习(二)synchronized关键字(2) Java多线程学习(三)volatile关键字 Ja...

一只蜗牛呀
2018/04/16
0
0
ThreadLocal 基础知识

ThreadLocal是什么 · 早在JDK 1.2的版本中就提供java.lang.ThreadLocal,ThreadLocal为解决多线程程序的并发问题提供了一种新的思路。使用这个工具类可以很简洁地编写出优美的多线程程序。 ...

向阳而生
2015/11/21
232
0

没有更多内容

加载失败,请刷新页面

加载更多

重庆哪里有开住宿费发票

重庆哪里有开住宿费发票【微电 : 1 3 5 * 4 4 2 8 * 6 8 6 2 】刘生-经.营.范.围.广█无需打开直接联系█点击上方“衡水发布” 可以订阅哦!郭台铭...

haa123
27分钟前
4
0
//编程:输入一个数n,然后输入n个数,求:(1)n个数的平均值; //(2)n个数中的最大值。用do while 写

#include<stdio.h> int main() { int n,i=0,x,Max=0; float y=0,aver; printf("输入一个数:\n"); scanf("%d",&n); do{ printf("输入一个数:\n"); scanf("%d",&x); y+=x; i++; if(x>Max){ Ma......

201905021729吴建森
32分钟前
4
0
拥抱 Elasticsearch:给 TiDB 插上全文检索的翅膀

作者介绍:孙晓光,知乎技术平台负责人,与薛宁(@Inke)、黄梦龙(@PingCAP)、冯博(@知乎)组队参加了 TiDB Hackathon 2019,他们的项目 TiSearch 获得了 CTO 特别奖。 “搜索”是大家在使...

TiDB
47分钟前
8
0
错误日志04(PSSecurityException之PowerShell权限设置)

Windows下PowerShell默认的权限级别是Restricted,不允许执行PS脚本(即.ps1文件)。如果在Restricted权限级别下运行,会得到错误信息: vue : 无法加载文件 C:\Users\29506\AppData\Roaming...

庭前云落
50分钟前
6
0
获取实例的类名?

如果我从中执行此操作的函数是实例的类派生的基类,如何找出在Python中创建对象实例的类的名称? 想到也许检查模块可能在这里帮助了我,但它似乎没有给我我想要的东西。 如果没有解析__class...

技术盛宴
52分钟前
6
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部