李鹏的博客

满心向你,却只字不提

《Java并发编程的艺术》第十章——Executor框架

Executor框架的两级调度模型 在HotSpot VM的线程模型中,Java线程被一对一映射为本地操作系统线程。Java线程启动时会创建一个本地操作系统线程。当该Java线程终止时,这个操作系统线程也会被回收。操作系统会调度所有线程并将它们分配给可用的CPU。 在上层,Java多线程程序通...

2018-01-26 16:16:05

阅读数 118

评论数 0

LeetCode之 AddTwoNumbers

给定两个非空链表,数字以相反的顺序存储,每个节点都包含一个数字。将相同位置数字相加,并将其作为链接列表返回。 Example Input: (2 -> 4 -> 3) + (5 -> 6 -> 4) Output: 7 -> 0 -> 8 Expla...

2018-01-25 10:53:21

阅读数 68

评论数 0

LeetCode之Two Sum

给定一个数组和一个目标值,返回数组中两个相加等于该目标值元素的索引。 Example: Given nums = [2, 7, 11, 15], target = 9, Because nums[0] + nums[1] = 2 + 7 = 9, return [0, 1] 解法...

2018-01-24 18:37:32

阅读数 86

评论数 0

《Java并发编程的艺术》第九章——Java中的线程池

Java中的线程池是运营场景最多的并发框架,几乎所有需要异步或并发执行任务的程序都可以使用线程池,在开发过程中,合理地使用线程池能够带来3个好处: - 降低资源消耗:通过重复利用已创建的线程降低线程创建和销毁造成的消耗。 - 提高响应速度:当任务到达时,任务可以不需要等待线程创建就可以立即...

2018-01-24 16:13:05

阅读数 108

评论数 0

反转链表Java实现

package cn.wangss.demo; /** * 反转链表 * @author LiPeng * */ public class Test { public static Node Reverse(Node head){ Node current=hea...

2018-01-24 11:30:57

阅读数 348

评论数 0

《Java并发编程的艺术》第八章——Java中的并发工具

在JDK的并发包里提供了几个非常有用的工具类。CountDownLatch、CyclicBarrier和Semaphore工具类提供了一种并发流程控制的手段,Exchanger工具类提供了在线程间交换数据的一种手段。 * 闭锁CountDownLatch* CountDownLatch允许一个...

2018-01-23 15:04:50

阅读数 55

评论数 0

《Java并发编程的艺术》第七章——Java中的13个原子操作类

当一个线程更新一个变量时,程序如果没有正确的同步,那么这个变量对于其他线程来说是不可见的。我们通常使用synchronized或者volatile来保证线程安全的更新共享变量。在JDK1.5中,提供了java.util.concurrent.atomic包,这个包中的原子操作类提供了一种用法简单,...

2018-01-21 12:55:45

阅读数 108

评论数 0

《Java并发编程的艺术》第六章——Java并发容器和框架

知识点: 1. ConcurrentHashMap 2. ConcurrentLinkedQueue 3. Java中的阻塞队列 4. Fork/Join框架 1. ConcurrentHashMap ConcurrentHashMap是Java5后出现的,是线程安全且高效...

2018-01-18 16:48:36

阅读数 138

评论数 0

《Java并发编程的艺术》第五章——Java中的锁

知识点: Lock接口。 AQS队列同步器。 重入锁和读写锁。 LockSupport工具。 Condition接口。 1.Lock接口。 在Lock接口出现之前,Java程序靠synchronized关键字实现锁功能,而Java SE5之后,并发包中新增了Lock接口用来实现锁功...

2018-01-04 11:49:41

阅读数 215

评论数 0

《Java并发编程的艺术》第四章——Java并发编程基础

知识点: 线程简介 。 启动和终止线程 。 线程间通信 。 1.线程简介 1.1 什么是线程? 要想明白什么是线程,必须先明白什么是进程!现在操作系统在运行一个程序时,会为其创建一个进程。而线程是操作系统调度的最小单元,也叫轻量级进程。一个进程里可以创建多个线程,这些线程都拥有各自...

2017-12-22 12:31:14

阅读数 115

评论数 0

《Java并发编程的艺术》第三章·附一——双重检查锁定与延迟初始化

在Java多线程程序中,有时候需要采用延迟初始化来降低初始化类和创建对象的开销。双重检查锁定是常见的延迟初始化技术,但它是一个错误的用法。本文将分析双重检查锁定的错误根源,以及两种线程安全的延迟初始化方案。双重检查锁定的由来? 在Java程序中,有时候可能需要推迟一些高开销的对象初始化操作,并且...

2017-12-20 17:04:25

阅读数 202

评论数 0

《Java并发编程的艺术》第三章——Java内存模型

Java内存模型知识点: Java内存模型的基础。 重排序规则。 Java内存模型的设计。 同步原语(synchronized、volatile、final)的内存语义。 1.Java内存模型的基础。 在命令式编程中,线程之间的通信方式有两种: - 共享内存:即线程把数据写到内存,...

2017-11-30 22:02:47

阅读数 254

评论数 0

《散》

曲终 2016年的平安夜,离你最近的一次,送你回家,你就站在那儿,那么真实,仿佛触手可及。该怪我被现实打击的没自信?亦或该感谢自己知难而退?失败者总是这样,想找个掩饰狼狈不堪的理由。 人散 茫茫人海,终究是互不相见。 散于2017.3.1...

2017-11-29 21:13:50

阅读数 107

评论数 0

《我还是很喜欢你》

我还是很喜欢你,像风走了八千里,不问归期。 我还是很喜欢你,像雨下了八公尺,温言软语。 我还是很喜欢你,像火烧了八公顷,生生不息。 我还是很喜欢你,像雪飘了八亿年,不惧孤寂。 我想再也遇不到你,像蓝天黄土相触在梦里,魂牵梦萦。 我想再也不喜欢你,像秋叶枯藤衰败在故里,后会无期。 我还是...

2017-11-29 21:01:33

阅读数 682

评论数 0

《把你的手给我吧》

序章 她就静静的站在那里,看着我离开,像一朵白色的郁金香,我真的看呆了。那一幕,我终生难忘。于是,一切的一切都有了勇气,至少有了说服自己的勇气。 她说:你在撩我吗? 我说:是啊! Happy,New Year! 因为得不到,所以才觉得是完美!因为完美所以才遗憾。因为有遗憾所以...

2017-11-29 20:58:55

阅读数 171

评论数 0

《抬头看看路吧》

有时候我问自己,这是你想要的生活吗? 有时候我问自己,我究竟怎么做才能得到我想要的? 有时候我问自己,我该不该走?去哪?做什么?什么时候? 对,只是有时候。我太急躁太急躁了。我没办法静静的坐在那读一本书,做一件事。每次都是来自狂欢后的反思,是否有些太虚伪了。 对,我什么都不知道。我太不坚定...

2017-11-29 20:57:12

阅读数 207

评论数 0

《情渐浓,语渐淡》

序章 我知道她就在那里,我大声的喊,我用力的招手,可全部被这纸醉金迷的生活所掠夺,然后毫不留情的丢在垃圾堆里。 我张开嘴想说些什么,却只被冷风灌了几口。 回忆的IP 经过漫长的筹备期,域名终于审核通过了。这段故事也终于能编辑成册,镌于心底,藏于记忆。 时间再长,走的再远,我也...

2017-11-29 20:55:18

阅读数 146

评论数 0

《忙里偷闲的悲伤》

序章 有些东西,原以为自己永不在触碰,可总是在被生活所戏弄的晕头转向之后,一头撞上,顾不上头破血流。有些事情,原以为自己会忘记,可时间的呼喊却一声声的烙印在心底,愈发的清晰。我不断的告诉自己,这是一个错误的决定,可无论如何都挣脱不了内心的挟持。 人这一生,注定都是心的傀儡。 前传...

2017-11-29 20:49:24

阅读数 86

评论数 0

《Java并发编程的艺术》第二章——Java并发机制的底层实现

《Java并发编程的艺术》各章知识点总结

2017-11-28 22:50:34

阅读数 502

评论数 0

《Java并发编程的艺术》第一章——并发编程的挑战

《Java并发编程的艺术》各章知识点总结

2017-11-27 22:37:33

阅读数 165

评论数 0

提示
确定要删除当前文章?
取消 删除
关闭
关闭