多线程
五色水彩笔
这个作者很懒,什么都没留下…
展开
-
进程与线程
在传统的操作系统中,程序并不能独立运行,作为资源分配和独立运行的基本单位都是进程。 进程:计算机中的程序关于某数据集合上的一次运行活动,是系统进行资源分配和调度的基本单位,是操作系统结构的基础。 线程:是程序执行流的最小单位,是进程内一个相对独立的、可调度的执行单元。 进程和线程的关系: 线程和进程的区别和优劣: 进程是资源分配的最小单位,线程是程序执行的最小单位 进程自己的独立地址空间,...原创 2019-09-15 15:53:57 · 100 阅读 · 0 评论 -
Synchronized
Synchronized:可以在任意对象上加锁,而加锁的这段代码称为互斥区或临界区。 public class SynchronizedDemo { /** * 线程不安全示例 */ class MyThread1 extends Thread{ private int count = 5; @Override ...原创 2019-09-26 22:37:42 · 141 阅读 · 0 评论 -
线程安全
111原创 2019-09-27 00:30:06 · 144 阅读 · 0 评论 -
安全发布对象
发布对象:使一个对象能够被当前范围之外的代码所使用。 对象逸出:一种错误的发布。当一个对象还没有构造完成,就使它被其他线程所见。 发布对象的线程不安全示例: public class UnsafePublish { private String[] states = {"a","b","c"}; public String[] getStates(){ return...原创 2019-09-27 14:31:32 · 115 阅读 · 0 评论 -
不可变对象
不可变对象需要满足的条件: 对象创建以后其状态就不能修改 对象所有域都是final类型 对象是正确创建的(在对象创建期间,this引用没有逸出) final关键字:类、方法、变量 修饰类:不能被继承,final修饰类的所有方法都被隐式修饰为fianl方法 修饰方法:1、锁定方法不被继承类修改;2、效率 修饰变量:基本数据类型变量(初始化后不能再修改),引用类型变量(初始化后不能再指向另外一个...原创 2019-09-30 18:29:32 · 193 阅读 · 0 评论