首页
沸点
课程
数据标注
HOT
AI Coding
更多
直播
活动
APP
插件
直播
活动
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
登录
注册
确定删除此收藏集吗
删除后此收藏集将被移除
取消
确定删除
确定删除此文章吗
删除后此文章将被从当前收藏集中移除
取消
确定删除
编辑收藏集
名称:
描述:
0
/100
公开
当其他人关注此收藏集后不可再更改为隐私
隐私
仅自己可见此收藏集
取消
确定
JAVA并发编程
订阅
杨CN
更多收藏集
微信扫码分享
微信
新浪微博
QQ
6篇文章 · 0订阅
Java并发编程入门(六)synchronized用法
1.synchronized加锁互斥且阻塞的,如果A已经获得锁,则B要等A执行完后才能执行。 2.锁定的对象如果不是同一个则不会阻塞,例如在同一个类的静态方法和实例方法上都有synchronized关键字,但它们不是同一个锁,因此互不影响。 3.锁定的对象必须是不变的,否则锁会…
Java并发编程(五)创建线程方式概览
以下简述创建线程的几种方式,不深入展开,了解则可。 业务类继承Thread,可直接以线程方式运行。代码如下: 业务类可以实现Callable接口或者Runnable接口,二者的区别是Callable执行完后有返回值,Runnable没有返回值。 业务类可以实现Callable接…
Java并发编程(四)有序性
在计算机执行指令的顺序在经过程序编译器编译之后形成的指令序列,一般而言,这个指令序列是会输出确定的结果;以确保每一次的执行都有确定的结果。但是,一般情况下,CPU和编译器为了提升程序执行的效率,会按照一定的规则允许进行指令优化,在某些情况下,这种优化会带来一些执行的逻辑问题,主…
Java并发编程(三)可见性
多核主机上每个CPU都有自己的缓存,在操作内存变量时需要先从内存加载到CPU缓存,操作完成后再从CPU缓存更新到内存,如果多个线程同时在不同的CPU上操作,那么看到的数据就有可能不一样。如图: T1两个线程都从内存读取到变量V。 T2线程A修改了变量V,但还未同步到内存中,此时…
Java并发编程(二)原子性
答案:以上两个类在并发情况下均不能保证线程安全。 线程安全:当多个线程访问某个类时,这类始终都能表现出正确的行为,那么这个类是线程安全的。 原子性:一个或者多个操作在CPU执行的过程中不被中断的特性称为原子性。 而以上两个类不能保证操作原子性导致不能表现正确的行为,因此都不是线…
Java并发编程(一)知识地图
Java极客 | 作者 / 铿然一叶这是Java极客的第 29 篇原创文章一、知识地图Java并发编程知识地图如下:相关阅读:Java并发编程(二)原子性Java并发编程(三)可见性Java并