Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
wushizhenking
CS-Notes
提交
04e29e95
C
CS-Notes
项目概览
wushizhenking
/
CS-Notes
与 Fork 源项目一致
从无法访问的项目Fork
通知
2
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
C
CS-Notes
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
04e29e95
编写于
4月 27, 2018
作者:
C
CyC2018
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
auto commit
上级
50971515
变更
2
隐藏空白更改
内联
并排
Showing
2 changed file
with
6 addition
and
10 deletion
+6
-10
notes/Java 并发.md
notes/Java 并发.md
+5
-9
notes/Leetcode 题解.md
notes/Leetcode 题解.md
+1
-1
未找到文件。
notes/Java 并发.md
浏览文件 @
04e29e95
...
...
@@ -43,6 +43,7 @@
*
[
内存模型三大特性
](
#内存模型三大特性
)
*
[
先行发生原则
](
#先行发生原则
)
*
[
十一、线程安全
](
#十一线程安全
)
*
[
线程安全定义
](
#线程安全定义
)
*
[
线程安全分类
](
#线程安全分类
)
*
[
线程安全的实现方法
](
#线程安全的实现方法
)
*
[
十二、锁优化
](
#十二锁优化
)
...
...
@@ -86,7 +87,7 @@
## 限期等待(Timed Waiting)
无需等待其它线程显
示
地唤醒,在一定时间之后会被系统自动唤醒。
无需等待其它线程显
式
地唤醒,在一定时间之后会被系统自动唤醒。
调用 Thread.sleep() 方法使线程进入限期等待状态时,常常用“使一个线程睡眠”进行描述。
...
...
@@ -1234,17 +1235,12 @@ join() 方法返回先行发生于 Thread 对象的结束。
# 十一、线程安全
##线程安全定义
## 线程安全定义
一个类在可以被多个线程安全调用时就是线程安全的。
##考虑线程安全的情况:
-
静态成员变量,静态成员变量位于方法区,所有对象共享一份内存,一旦修改静态成员变量被修改,所有对象均可见,所以是线程非安全。
-
实例成员变量,实例变量为对象实例私有,在虚拟机的堆heap中分配,若在系统中只存在一个此对象的实例,在多线程环境下,“犹如”静态变量那样,
被某个线程修改后,其他线程对修改均可见,故线程非安全(如,springmvc controller是单例的,非线程安全的);如果每个线程执行都是在不同的
对象中,那对象与对象之间的实例变量的修改将互不影响,故线程安全(如,struts2 action默认是非单例的,每次请求在heap中new新的action实例,
故struts2 action可以用实例成员变量)。
-
局部变量,局部变量位于栈区,线程间不共享,方法结束就可能被回收,线程安全
## 线程安全分类
线程安全不是一个非真即假的命题,可以将共享数据按照安全程度的强弱顺序分成以下五类:不可变、绝对线程安全、相对线程安全、线程兼容和线程对立。
### 1. 不可变
...
...
notes/Leetcode 题解.md
浏览文件 @
04e29e95
...
...
@@ -564,7 +564,7 @@ Input: numbers={2, 7, 11, 15}, target=9
Output: index1=1, index2=2
```
题目描述:在有序数组中找出两个数,使它们的和为
`target`
。
题目描述:在有序数组中找出两个数,使它们的和为
target
。
使用双指针,一个指针指向值较小的元素,一个指针指向值较大的元素。指向较小元素的指针从头向尾遍历,指向较大元素的指针从尾向头遍历。
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录