
多线程与并发笔记
ljt2724960661
这个作者很懒,什么都没留下…
展开
-
多线程笔记—实现互斥效果
实现多线程的互斥效果 第一种是通过sychronized与wait,notify,具体代码如下public class TestThread { public static boolean isF=false;public static void main(String[] args) { final Arth arth = new Arth(); new原创 2018-03-04 17:07:28 · 395 阅读 · 0 评论 -
多线程笔记—CopyOnWriteArrayList
CopyOnWriteArrayList 概念:英译写时复制集合,它是ArrayList的线程安全的变体。大家在Java并发包下会看到很多带有CopyOnWriteXXX前缀的类,它是一种用于程序设计中的优化策略,当需要修改A内容的时候,会把A复制一份,形成新的内容B,修改完B之后,将旧内容A的引用指向新的内容B,常常用在并发的场景下。 ...原创 2018-04-22 20:35:10 · 298 阅读 · 1 评论 -
多线程笔记-线程的停止方式
线程的停止方式 停止线程是在多线程开发时很重要的技术点,如果想有效地对线程进行处理,需要一些技巧性。停止线程意味着在线程处理完任务之前停掉正在做的操作,也就是放弃当前的操作。常见的方式如下:1.使用退出标志。也就是在线程run方法完成后停止线程。public class TestThread extends Thread{ public volatile static bo原创 2018-04-30 11:00:05 · 225 阅读 · 0 评论 -
多线程笔记—ReentrantReadWriteLock
ReentrantReadWriteLock ReentrantReadWriteLock:读写锁,一个是读操作相关的锁,称为共享锁;另一个是写操作相关的锁,也叫排他锁。也就是多个读锁之间不互斥,读锁与写锁互斥,写锁与写锁互斥。由于ReentrantLock具有完全互斥排他的效果,也就是同一时间只有一个线程在执行ReentrantLock.lock()方法后面的任务。虽然保证了原创 2018-05-06 23:06:22 · 170 阅读 · 0 评论 -
多线程笔记—线程池
线程池 概念:线程池是指在初始化一个多线程应用程序过程中创建一个线程集合,然后在需要执行新的任务时重用这些线程而不是新建一个线程。线程池中线程的数量通常完全取决于可用内存数量和应用程序的需求。然而,增加可用线程数量是可能的。线程池中的每个线程都有被分配一个任务,一旦任务已经完成了,线程回到池子中并等待下一次分配任务。在java中大致有这几种线程池: newScheduledThrea...原创 2018-06-26 08:36:10 · 169 阅读 · 0 评论