文档章节

Synchronized的用法

rainmanqqst
 rainmanqqst
发布于 2017/02/28 11:51
字数 279
阅读 19
收藏 0
点赞 0
评论 0

Synchronized的大概有4中用法

1.修饰一个方法,如:

public synchronized void count(){

}

在这种情况下,一个对象一次只能有一个线程可以访问该方法。如果是类的不同实现对象,访问同一接口不会受到影响。如果该类中有多个方法都添加了synchronized方法,则一个对象调用其中一个synchronized方法时,该对象的其他线程不允许调用其他synchronized方法

2.修饰一个代码块,如

public void count(){
    synchronized(this){

    }
}

在这种情况下,同一个对象,一次只能有一个线程访问代码块中的代码

3.修饰一个静态方法,如

public synchronized static void count(int time){
        
}

由于静态方法是属于类的,所以该类的所有实现对象,一次只能有一个线程使用该方法

4.修饰一个类,如

public class ThreadSync{

public void count(int time){
        synchronized (ThreadSync.class){
        }
}
}

在这种情况下,该类的所有实现对象,一次只能有一个线程访问代码块中的代码

© 著作权归作者所有

共有 人打赏支持
rainmanqqst
粉丝 7
博文 57
码字总数 32306
作品 0
浦东
程序员
并发编程笔记二:synchronized锁住了谁?

在并发编程中要使用到关键字,当我们用关键字修饰一个方法时,代表着一个锁(Lock),那么这个锁的对象是什么,也就是它锁住了谁? 的使用情况大概就是下面几种: synchronized修饰非静态方法...

binxin5108 ⋅ 2016/12/23 ⋅ 0

Java对象锁和类锁全面解析(多线程synchronized关键字)

版权声明:本文为博主原创文章,转载注明出处http://blog.csdn.net/u013142781 最近工作有用到一些多线程的东西,之前吧,有用到synchronized同步块,不过是别人怎么用就跟着用,并没有搞清楚...

tantexian ⋅ 2016/12/19 ⋅ 0

Java 同步方式 (1) —— synchronized

前两篇博客 ArrayList 用法比较 和 String 用法比较,介绍过程中都提及到了同步和线程安全的问题,本篇将重点介绍Java同步方式之一的synchronized用法。 线程安全 线程安全,是指每次运行结果...

长平狐 ⋅ 2013/01/06 ⋅ 0

Java synchronized使用

先看测试方法: 多个线程同时访问多个synchronized方法: 输出如下: 由此可以看出:多线程在同一时刻只能有一个线程访问对象的synchronized方法 多线程同时访问一个synchronized方法,一个非...

清尘V ⋅ 2016/05/11 ⋅ 0

Synchronized 的用法

Synchronized 的用法 synchronized 是一种同步锁。它修饰的对象有以下几种: 修饰一个代码块,被修饰的代码块称为同步代码块,作用范围是{}里面的代码,作用的兑现是调用这个代码块的对象; ...

u014527323 ⋅ 2017/11/23 ⋅ 0

多线程并发的解决方案 volatile synchronized notify notifyAll wait关键字分析

1.ThreadLocal用法 在java中,如果一个变量需要被多个线程访问,可以使用volatile来声明它为“易变的”。而假如一个变量要被持有它的某个线程独享,在java中,它可以使用java.lang.ThreadLoc...

陈小扁 ⋅ 2016/03/09 ⋅ 0

整理下java中stringBuilder和stringBuffer两个类的区别

StringBuilder和StringBuffer这两个类在动态拼接字符串时常用,肯定比String的效率和开销小,这是因为String的对象不会回收哦。 其实我一直用StringBuilder这个类,因为可以简写为sb的变量在...

王小明123 ⋅ 2012/05/15 ⋅ 0

synchronized的用法

以前的工作过程中,偶尔会遇到synchronized的使用,比如这篇总结。今天来总结一下自己对synchronized的关键字的一些认识。 同步锁 synchronized顾名思义,就是用来进行一些同步工作的,我们常...

德彪 ⋅ 2017/11/28 ⋅ 0

java中可重入锁的学习总结

经常看到网上的人说,可重入锁一词,但是总是没怎么了解,到底什么是可重入锁,一直是一个模糊的概念,下面来大致总结一下。 可重入锁:指的是同一个线程多次试图获取它所占有的锁,请求会成...

双月通天 ⋅ 2016/06/07 ⋅ 0

@synchronized方法

@synchronized ,代表这个方法加锁, 相当于不管哪一个线程(例如线程A),运行到这个方法时,都要检查有没有其它线程例如B正在用这个方法,有的话要等正在使用synchronized方法的线程B运行完这...

Matsonga ⋅ 2016/03/23 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

十五周二次课

十五周二次课 17.1mysql主从介绍 17.2准备工作 17.3配置主 17.4配置从 17.5测试主从同步 17.1mysql主从介绍 MySQL主从介绍 MySQL主从又叫做Replication、AB复制。简单讲就是A和B两台机器做主...

河图再现 ⋅ 48分钟前 ⋅ 0

docker安装snmp rrdtool环境

以Ubuntu16:04作为基础版本 docker pull ubuntu:16.04 启动一个容器 docker run -d -i -t --name flow_mete ubuntu:16.04 bash 进入容器 docker exec -it flow_mete bash cd ~ 安装基本软件 ......

messud4312 ⋅ 今天 ⋅ 0

OSChina 周一乱弹 —— 快别开心了,你还没有女友呢。

Osc乱弹歌单(2018)请戳(这里) 【今日歌曲】 @莱布妮子 :分享吴彤的单曲《好春光》 《好春光》- 吴彤 手机党少年们想听歌,请使劲儿戳(这里) @clouddyy :小萝莉街上乱跑,误把我认错成...

小小编辑 ⋅ 今天 ⋅ 7

mysql in action / alter table

change character set ALTER SCHEMA `employees` DEFAULT CHARACTER SET utf8mb4 DEFAULT COLLATE utf8mb4_general_ci ;ALTER TABLE `employees`.`t2` CHARACTER SET = utf8mb4 , COLLAT......

qwfys ⋅ 今天 ⋅ 0

Java 开发者不容错过的 12 种高效工具

Java 开发者常常都会想办法如何更快地编写 Java 代码,让编程变得更加轻松。目前,市面上涌现出越来越多的高效编程工具。所以,以下总结了一系列工具列表,其中包含了大多数开发人员已经使用...

jason_kiss ⋅ 昨天 ⋅ 0

Linux下php访问远程ms sqlserver

1、安装freetds(略,安装在/opt/local/freetds 下) 2、cd /path/to/php-5.6.36/ 进入PHP源码目录 3、cd ext/mssql进入MSSQL模块源码目录 4、/opt/php/bin/phpize生成编译配置文件 5、 . ./...

wangxuwei ⋅ 昨天 ⋅ 0

如何成为技术专家

文章来源于 -- 时间的朋友 拥有良好的心态。首先要有空杯心态,用欣赏的眼光发现并学习别人的长处,包括但不限于工具的使用,工作方法,解决问题以及规划未来的能力等。向别人学习的同时要注...

长安一梦 ⋅ 昨天 ⋅ 0

Linux vmstat命令实战详解

vmstat命令是最常见的Linux/Unix监控工具,可以展现给定时间间隔的服务器的状态值,包括服务器的CPU使用率,内存使用,虚拟内存交换情况,IO读写情况。这个命令是我查看Linux/Unix最喜爱的命令...

刘祖鹏 ⋅ 昨天 ⋅ 0

MySQL

查看表相关命令 - 查看表结构    desc 表名- 查看生成表的SQL    show create table 表名- 查看索引    show index from  表名 使用索引和不使用索引 由于索引是专门用于加...

stars永恒 ⋅ 昨天 ⋅ 0

easyui学习笔记

EasyUI常用控件禁用方法 combobox $("#id").combobox({ disabled: true }); ----- $("#id").combobox({ disabled: false}); validatebox $("#id").attr("readonly", true); ----- $("#id").r......

miaojiangmin ⋅ 昨天 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部