上一页 1 ··· 8 9 10 11 12 13 14 15 16 ··· 26 下一页

2018年7月22日

Java并发编程原理与实战五:创建线程的多种方式

摘要: 一、继承Thread类 二、实现Runnable 接口 三、匿名内部类的方式 四、带返回值的线程 import java.util.concurrent.Callable; import java.util.concurrent.FutureTask; public class Demo4 impl 阅读全文

posted @ 2018-07-22 10:02 pony1223 阅读(401) 评论(0) 推荐(0)

2018年7月21日

Java并发编程原理与实战四:线程如何中断

摘要: 如果你使用过杀毒软件,可能会发现全盘杀毒太耗时间了,这时你如果点击取消杀毒按钮,那么此时你正在中断一个运行的线程。 java为我们提供了一种调用interrupt()方法来请求终止线程的方法,下面我们就一起来学习一下线程的中断。 每一个线程都有一个boolean类型标志,用来表明当前线程是否请求中断 阅读全文

posted @ 2018-07-21 01:17 pony1223 阅读(926) 评论(1) 推荐(0)

Java并发编程原理与实战三:多线程与多进程的联系以及上下文切换所导致资源浪费问题

摘要: 一、进程 考虑一个场景:浏览器,网易云音乐以及notepad++ 三个软件只能顺序执行是怎样一种场景呢?另外,假如有两个程序A和B,程序A在执行到一半的过程中,需要读取大量的数据输入(I/O操作),而此时CPU只能静静地等待任务A读取完数据才能继续执行,这样就白白浪费了CPU资源。你是不是已经想到在 阅读全文

posted @ 2018-07-21 01:04 pony1223 阅读(1219) 评论(0) 推荐(0)

2018年7月20日

Java并发编程原理与实战二:并行&并发&多线程的理解

摘要: 1.CPU的发展趋势: 核心数目依旧会越来越多,根据摩尔定律,由于单个核心性能提升有着严重的瓶颈问题,普通的PC桌面在2018年可能回到24核心。 2.并发和并行的区别: 所有的并发处理都有排队等候,唤醒和执行这三个步骤,所以并发是宏观的观念,在微观上他们都是序列被处理的,只不过资源不会在某一个上被 阅读全文

posted @ 2018-07-20 08:27 pony1223 阅读(1670) 评论(0) 推荐(0)

2018年7月19日

ConcurrentHashMap 产生NullPointerException

摘要: 今天测试在发给我一段报错日志后,根据日志定位到从ConcurrentHashMap 的缓存中get的时候,ConcurrentHashMap的底层抛出了空指针,当时感觉很奇怪为什么在get的时候产生空指针了呢? 模拟代码: 这个地方出现空指针,难道是传入的null 所以出现了空指针了,事实证明确实传 阅读全文

posted @ 2018-07-19 23:40 pony1223 阅读(9323) 评论(0) 推荐(1)

Java并发编程原理与实战一:聊聊并发

摘要: 一、大纲 •你真的了解并发吗 •多线程和并发 •多线程和多进程 •线程一定快吗 •学习并发的四个阶段 •学习目标 •适合人群 •荐书 二、学习并发的四个阶段 •熟练掌握API,能够完成并发编程 •熟读API源码,掌握其原理 •理解Java虚拟机的内存模型 •操作系统对并发的支持 三、为什么要学习并发 阅读全文

posted @ 2018-07-19 08:25 pony1223 阅读(515) 评论(0) 推荐(0)

2018年7月18日

JAVA多线程提高十四: 面试题

摘要: 前面针对多线程相关知识点进行了学习,那么我们来来看看常见的面试题: 其它面试题: https://www.cnblogs.com/Jansens520/p/8624708.html Java多线程常用面试题(含答案,精心总结整理) 阅读全文

posted @ 2018-07-18 08:30 pony1223 阅读(347) 评论(0) 推荐(0)

2018年7月17日

JAVA多线程提高十三:同步集合类的应用

摘要: 1.引言 在多线程的环境中,如果想要使用容器类,就需要注意所使用的容器类是否是线程安全的。在最早开始,人们一般都在使用同步容器(Vector,HashTable),其基本的原理,就是针对容器的每一个操作,都添加synchronized来进行同步,此种方式尽管简单,但是其性能是非常地下的,所以现在已经 阅读全文

posted @ 2018-07-17 08:20 pony1223 阅读(582) 评论(0) 推荐(0)

2018年7月16日

JAVA多线程提高十二:阻塞队列应用

摘要: 一、类相关属性 接口BlockingQueue<E>定义: 方法摘要 在所有方法对类中存储数据的数组做操作时,需要获取锁lock。 BlockingQueue 方法以四种形式出现,对于不能立即满足但可能在将来某一时刻可以满足的操作,这四种形式的处理方式不同:第一种是抛出一个异常,第二种是返回一个特殊 阅读全文

posted @ 2018-07-16 08:25 pony1223 阅读(1683) 评论(0) 推荐(1)

JAVA多线程提高十一:同步工具Exchanger

摘要: Exchanger可以在对中对元素进行配对和交换的线程的同步点。每个线程将条目上的某个方法呈现给 exchange 方法,与伙伴线程进行匹配,并且在返回时接收其伙伴的对象。Exchanger 可能被视为 SynchronousQueue 的双向形式。Exchanger 可能在应用程序(比如遗传算法和 阅读全文

posted @ 2018-07-16 08:10 pony1223 阅读(289) 评论(0) 推荐(0)

上一页 1 ··· 8 9 10 11 12 13 14 15 16 ··· 26 下一页

导航