随笔分类 -  多线程

摘要:1.什么是线程安全问题? 从某个线程开始访问到访问结束的整个过程,如果有一个访问对象被其他线程修改,那么对于当前线程而言就发生了线程安全问题;如果在整个访问过程中,无一对象被其他线程修改,就是线程安全的。 2.线程安全问题产生的根本原因 综上可知,线程安全问题产生的根本原因是共享数据存在被并发修改的 阅读全文
posted @ 2017-07-12 17:47 tonghun 阅读(4877) 评论(0) 推荐(0)
摘要:一 概述 1.线程池产生背景 在多线程环境下,频繁地创建与销毁线程会耗费大量的系统资源,降低运行性能,因此产生了一种设计思想:将创建好的线程放到一个容器中,需要时从容器取得线程,使用完毕将线程归还容器,这样就可以重复利用线程,避免了重复创建与销毁造成的资源消耗,提高了性能。 2.什么是线程池? 元素 阅读全文
posted @ 2017-06-27 17:33 tonghun 阅读(409) 评论(0) 推荐(0)
摘要:一 概述 1.volatile 保证共享数据一旦被修改就会立即同步到共享内存(堆或者方法区)中。 2.线程访问堆中数据的过程 线程在栈中建立一个数据的副本,修改完毕后将数据同步到堆中。 3.指令重排 为了提高执行效率,CPU会将没有依赖关系的指令重新排序。如果希望控制重新排序,可以使用volatil 阅读全文
posted @ 2017-06-27 17:19 tonghun 阅读(11273) 评论(0) 推荐(0)
摘要:一 概述 1.什么是进程? 进程是一个相对独立的执行单位,可以被看作一个程序或者一个应用。 2.什么是线程? 进程的一部分,进程中实际的任务执行者,必须依附于进程。线程对进程的依赖主要体现在: 线程不能脱离进程开启,必须在进程开启的前提下开启。 线程有时必须从进程中获取数据。 3.线程与进程的区别? 阅读全文
posted @ 2017-06-03 00:03 tonghun 阅读(328) 评论(0) 推荐(0)