系统运维系列 之Java中synchronized详解及应用

news/2024/5/17 18:51:55 标签: 休眠文件, 运维, java锁, synchronized

synchronized是Java中的关键字,被Java原生支持,是一种最基本的同步锁。它修饰的对象有以下几种:
  1. 修饰一个代码块,被修饰的代码块称为同步语句块,其作用的范围是大括号{}括起来的代码,作用的对象是调用这个代码块的对象。
  2. 修饰一个方法,被修饰的方法称为同步方法,其作用的范围是整个方法,作用的对象是调用这个方法的对象。
  3. 修改一个静态的方法,其作用的范围是整个静态方法,作用的对象是这个类的所有对象。
  4. 修改一个类,其作用的范围是synchronized后面括号括起来的部分,作用主的对象是这个类的所有对象。

查看线程生命周期:
1. 初始(NEW):新创建了一个线程对象,但还没有调用start()方法。
2. 运行(RUNNABLE)Java线程中将就绪(ready)和运行中(running)两种状态笼统的称为“运行”。线程对象创建后,其他线程(比如main线程)调用了该对象的start()方法。该状态的线程位于可运行线程池中,等待被线程调度选中,获取CPU的使用权,此时处于就绪状态(ready)。就绪状态的线程在获得CPU时间片后变为运行中状态(running)。
3. 阻塞(BLOCKED):表示线程阻塞于锁。
4. 等待(WAITING):进入该状态的线程需要等待其他线程做出一些特定动作(通知或中断)。
5. 超时等待(TIMED_WAITING):该状态不同于WAITING,它可以在指定的时间后自行返回。
6. 终止(TERMINATED):表示该线程已经执行完毕。

参考资料:
https://www.cnblogs.com/songgj/p/14403523.html Java中synchronized详解


http://www.niftyadmin.cn/n/1223739.html

相关文章

Flash常用快捷键大全

A 箭头  L 套索N 直线  T 文字O 椭圆  R 矩形P 铅笔  B 笔刷I 墨水瓶 U 油漆桶D 滴管  E 橡皮擦H 移动  M 放大镜CTRLN 新建一个影片CTRLO 打开一个影片CTRLSHIFTO 以图库打开影片CTRLW 关闭影片文件CTRLS 保存影片文件CTRLSHIFTS 影片文件另存为CTRLR 读入文件CT…

系统运维系列 之Clickhouse数据库学习集锦(接查询优化问题整理)

1 简介 ClickHouse是一个用于联机分析 (OLAP)的列式数据库管理系统(DBMS),来自于俄罗斯本土搜索引擎企业 Yandex 公司,是为世界第二大web分析平台(Yandex.Metrica)所开发2016年开源,开发语言是C,是一款PB级的交互式分…

2006年十大流行语录,那是相当的经典

10.相当的 赵本山春节晚会的小品,几乎每年都会引爆几句流行语。“相当的”已经成了一个挂在嘴边的形容词,“马甲”也成为网络上的千古绝唱,还将继续唱下去,期待他今年春节晚会的作品,感谢他带给我们的笑声。 9.要是一…

人工智能系列 之机器学习DBSCAN聚类算法

1 介绍 DBSCAN(Density-Based Spatial Clustering of Applications with Noise)是一个出现得比较早(1996年),比较有代表性的基于密度的聚类算法。DBSCAN能够将足够高密度的区域划分成簇,并能在具有噪声的空…

系统运维系列 之java中实现多线程的方式补充

1 介绍 接本专题博客之 系统运维系列 之java中实现多线程的方式 上篇博客提到多线程使用的4种方式,分别是: 实现方式1:继承Thread类,重写该类的run方法; 实现方式2:实现Runnable接口,并重写该接…

技术关注:搜索引擎经验

[搜索技术] 搜索引擎经验总结 # 这里是一点我在学习和开发搜索引擎过程中的一点学习和经验总结,文中讲述了蜘蛛、切词、索引、查询器等名模块的一些概述和细节,希望能给搜索引擎中的初学点的一点帮助,对于那些高手也能够带来一点点启发的帮助…

个人网站www.pixysoft.net设计系列: 数据库同步的实现

个人网站www.pixysoft.net设计系列: 数据库同步的实现 Iteration 1.对于本地新增的数据,版本号全部为0.上传成功后,版本自动加1.上传失败则直接返回(Web V < Local V).下载成功后,修改本地版本号.下载失败,直接返回(Web V > Local V)Interation 2.CVCL放在本地端..本地直…

数据分析系列 之根据经纬度计算两点之间的距离

1 基础知识&#xff1a; 地球半径&#xff1a; 由于地球不是一个完美的球体&#xff0c;所以并不能用一个特别准确的值来表示地球的实际半径&#xff0c;不过由于地球的形状很接近球体&#xff0c;用[6357km] 到 [6378km]的范围值可以涵盖需要的所有半径。 2 Java实现代码&…