随笔分类 -  多线程与并发

摘要:RocketMQ 入门进阶+实战 阅读全文
posted @ 2020-05-09 10:59 小卖铺的老爷爷 阅读(382) 评论(0) 推荐(0)
摘要:多线程、线程池、并发包每当谈起这些词汇,可能不是在面试就是在准备面试的路上了。 有句话叫“面试造航母,工作拧螺丝“,确实很多情况下我们是用不到这些东西的,但是学好这些东西对我们的日常工作也可能会产生意想不到的好处的。 临近年末,收拾了下手头工作,趁着最后两天有些闲暇,准备着手优化下前段时间业务人员反 阅读全文
posted @ 2019-01-31 17:01 小卖铺的老爷爷 阅读(2054) 评论(0) 推荐(6)
摘要:可能有些同学知道ArrayList,HashSet,,HashMap这些容器都是线程不安全的,如果多个线程并发的访问这些容器就会导致线程不安全问题,很多时候需要我们手动对这些容器进行同步处理,造成我们很大的不便,因此java为我们提供了同步容器和并发容器来解决这个问题。 一、同步容器 首先详细介绍前 阅读全文
posted @ 2018-10-23 21:18 小卖铺的老爷爷 阅读(340) 评论(0) 推荐(0)
摘要:最近在本地开发测试的时候,遇到一个表单重复提交的现象。其实原因很简单,因为网络延迟的问题,我点击了两次提交按钮,数据库里生成了两条记录。其实这种现象以前也有遇到过,一般都是提交后把按钮置灰,无法再次提交,这是很常见的客户端处理的方式。 但是这真的有从根本上解决问题吗,虽然客户端解决了多次提交的问题, 阅读全文
posted @ 2018-08-31 16:06 小卖铺的老爷爷 阅读(4001) 评论(0) 推荐(5)
摘要:J.U.C学习的第二篇AQS。AQS在Java并发包中的重要性,毋庸置疑,所以单独拿出来理一理。本文参考总结自《Java并发编程的艺术》第五章第二节队列同步器。 什么是AbstractQueuedSynchronizer? AbstractQueuedSynchronizer是JUC并发包中锁的底层 阅读全文
posted @ 2018-08-29 20:55 小卖铺的老爷爷 阅读(419) 评论(0) 推荐(0)
摘要:此篇是J.U.C学习的第一篇Atomic包相关的内容,希望此篇总结能对自己的基础有所提升。本文总结来源自《Java并发编程的艺术》第七章并配以自己的实践理解。如有错误还请指正。 一、案例分析 首先看两段代码: 代码①: 5000个线程200个并发的情况下,对一个共享变量进行++操作。 结果:4997 阅读全文
posted @ 2018-08-18 17:13 小卖铺的老爷爷 阅读(737) 评论(0) 推荐(1)
摘要:一、线程三大特性 多线程有三大特性,原子性、可见性、有序性 1.1 什么是原子性 即一个操作或者多个操作 要么全部执行并且执行的过程不会被任何因素打断,要么就都不执行。一个很经典的例子就是银行账户转账问题: 比如从账户A向账户B转1000元,那么必然包括2个操作:从账户A减去1000元,往账户B加上 阅读全文
posted @ 2017-10-08 13:21 小卖铺的老爷爷 阅读(538) 评论(0) 推荐(0)
摘要:在做很多高并发应用的时候,单线程的瓶颈已经满足不了我们的需求,此时使用多线程来提高处理速度已经是比较常规的方案了。在使用多线程的时候,我们可以使用线程池来管理我们的线程,至于使用线程池的优点就不多说了。 Java线程池说起来也简单,简单说下继承关系: ThreadPoolExecutor exten 阅读全文
posted @ 2017-03-20 15:09 小卖铺的老爷爷 阅读(7849) 评论(1) 推荐(2)



^
TOP