- 博客(5)
- 资源 (3)
- 收藏
- 关注
原创 【Java多线程】内存模型JMM—主内存与工作内存分析
关于主内存与工作内存之间的具体交互协议,即一个变量如何从主内存拷贝到工作内存、如何从工作内存同步回主内存之类的实现细节,Java 内存模型中定义了下面 8 种操作来完成。从上图可以直观的看到volatile的实现可见性的原理,线程对变量读取/写入的时候,直接从主内存中读,而不是从线程的工作内存。Assign(赋值):作用于工作内存中的变量,把一个从执行引擎接收到的值赋值给工作内存中的变量。:作用于工作内存中的变量,把工作内存中的一个变量的值传送到主内存中,以便随后 write 操作使用。
2019-09-29 14:54:12 3108 11
原创 【Java多线程】多线程与CPU、内存和I/O
线程线程是进程的进一步划分,是操作系统系统能够进行运算高度的最小单元。一个进程通常包含多个线程。其中,必有一个主线程。一个线程的执行,通常需要三个资源,即CPU,内存和I/O。CPU负载运行,内存负责存放即时数据,I/O负责和磁盘、数据库、网络等做数据交换。在单核CPU的情况下,单位时间里,CPU只能处理一个线程。那么,CPU怎么实现多线程呢?我们说,CPU采用了时间分片的方式。CPU将一段...
2019-09-27 16:08:42 1317 3
原创 【Java基础】分析Java中i++和++i的区别
在区分这两个之前,我们先来了解一下它们的运算规则int i=1,a=0; // i++ 先赋值在运算,例如 a=i++,先赋值a=i,后运算i=i+1,所以结果是a==1 // ++i 先运算在赋值,例如 a=++i,先运算i=i+1,后赋值a=i,所以结果是a==2实例:public class Test { public static void main(String[] arg...
2019-09-27 14:49:59 2193
原创 【Spring】使用Aop实现统一记录请求方法返回值日志及统一异常处理
文章目录使用aop实现统一记录请求方法返回值日志及统一异常处理使用aop实现统一记录请求方法返回值日志及统一异常处理引入aop依赖的jar包<dependency> <groupId>org.springframework</groupId> <artifactId>spring-aop</artifactId>...
2019-09-12 14:31:12 1404
原创 【Maven】理解maven的6大内置属性
maven打包加时间戳基于Maven的项目,发布时需要打包,如web项目打成war格式包。每次打包时希望自己加上时间戳,假如我的项目名是myproject,默认打包后名为ROOT-2.1.1.war。而我希望的名字为ROOT-2.1.1-{yyyyMMddHHmmss},方便以后对包进行查找与管理,如何实现这种效果呢?使用maven自带的属性设置时间戳格式:在pom.xml文件中加入以下配...
2019-09-04 14:16:10 805
Inkscape是一个开放源码的矢量绘图软件
2023-10-09
exe4j+infoSetup.zip
2021-02-22
屏幕亮度调节软件 8.2.1.4 正式版.zip
2021-02-22
python滑动验证
2023-10-10
TA创建的收藏夹 TA关注的收藏夹
TA关注的人