多线程基本概念
来源:互联网 发布:软件配置管理 培训 编辑:程序博客网 时间:2024/06/06 04:28
竞争条件:多个任务并发访问和操作同一数据且执行结果与访问的特定顺序有关,称为竞争条件。(多个任务竞争响应某个条件,因访问顺序不同产生冲突或不一致的情况)。比如“检查再运行”“惰性初始化”。
原子操作:不能被打断的一系列操作。
复合操作:可以被打断的一系列操作。
不变约束(不变性约束):不变式表达了对状态的约束,这些状态应该符合这个约束值的组合。不变式可以代表某些业务规则。比如《java并发编程实战》中的例子:
UnsafeCachingFactorizer的一个不变约束是:缓存在lastFactors的各个因子的乘积应该等于缓存在lastNumber的数值。如果不符合该约束关系则不是线程安全的。
先验条件:针对方法,规定了在调用方法之前必须为真的条件。
后验条件:针对方法,规定了在调用方法之后必须为真的条件。
可见性:确保线程对变量的写入对其他线程是可见的,即刷新到主内存,其他线程要想见到还需要到主内存读取。
阅读全文
0 0
- 多线程基本概念
- 多线程基本概念
- 多线程基本概念
- 多线程基本概念
- 多线程:基本概念
- 多线程基本概念
- 多线程基本概念
- Windows多线程基本概念
- Win32多线程程序设计基本概念
- 多线程设计基本概念
- 多线程基本概念解析
- 多线程中的基本概念
- Linux 多线程,基本概念
- Linux多线程,基本概念
- 1、Linux多线程,基本概念
- java多线程基本概念
- Linux多线程,基本概念
- linux多线程----基本概念
- codeforce 347c
- 基于“视频图像”的人脸识别算法
- ACM 大数运算 A/B Problem
- 纯js代码的计时器
- 框架面试题
- 多线程基本概念
- 二分查找总结
- AngularJs路由修改密码表单展示
- 自定义圆形进度条
- Struts2框架学习---ONE
- 多进程、多线程、协程实现并发
- HTTP和HTTPS的区别及HTTPS加密算法
- LeetCode:Majority Element I II 投票算法
- Swift算法小程序