多线程
子之乐鱼之乐
偷得浮生半日闲
展开
-
随笔_一次使用阻塞队列进行线程并发控制的实践
一次使用阻塞队列进行线程并发控制的实践背景大致实现思路可能的问题 背景 目标:使用多线程消费来自kafka的数据 要求:线程数可控制,代码简洁 大致实现思路 从Kafka分批拉取数据,每批数据分给多个线程并发处理(此处是公司包装的Kafka调用方式) 并发控制分为两个部分: 一方面对于封装的Kafka调用可以配置启用处理线程数,每个线程的执行是相对独立的(对于每个包内取出的数据采用平均分配的...原创 2019-08-20 13:30:26 · 178 阅读 · 0 评论 -
synchronized与ReenTrantLock详解
synchronized与ReenTrantLock详解相似点:功能区别:底层实现区别便利性区别细粒度和灵活度区别性能的区别:SynchronizedReentrantLock公平锁、非公平锁的创建方式:ReenTrantLock实现的原理: 相似点: 这两种同步方式有很多相似之处,它们都是加锁方式同步,而且都是阻塞式的同步,也就是说当如果一个线程获得了对象锁,进入了同步块,其他访问该同步块的线程...转载 2019-08-13 10:49:03 · 130 阅读 · 0 评论 -
简单解释可重入锁与不可重入锁
简单解释可重入锁与不可重入锁 相关内容地址:https://blog.csdn.net/u012545728/article/details/80843595 可重入锁与不可重入锁的区别可以简单解释为: 可重入锁在线程中使用时,可以反复嵌套调用同一个锁控制的代码块 该种情形下会使该代码块的计数器增加(执行完毕相关代码块则会释放锁,计数器递减) 而不可重入锁的使用必须保证该锁被释放后才能下一次获取该...原创 2019-08-13 10:56:20 · 229 阅读 · 0 评论 -
Java中的锁分类
Java中的锁分类公平锁/非公平锁可重入锁独享锁/共享锁互斥锁/读写锁乐观锁/悲观锁分段锁偏向锁/轻量级锁/重量级锁自旋锁 公平锁/非公平锁 公平锁是指多个线程按照申请锁的顺序来获取锁。 非公平锁是指多个线程获取锁的顺序并不是按照申请锁的顺序,有可能后申请的线程比先申请的线程优先获取锁。有可能,会造成优先级反转或者饥饿现象。 对于Java ReentrantLock而言,通过构造函数指定该锁是否是...转载 2019-08-13 11:00:37 · 77 阅读 · 0 评论 -
Java进阶知识点博客阅读笔记
Java进阶知识点博客阅读笔记前言JAVA I/O字符串操作的线程安全性问题 前言 Java进阶知识点博客是一个非常好的知识点总结目录,这里主要按照个人需求挑选一些特定的内容进行进一步的学习、总结、归纳。 JAVA I/O 字符串操作的线程安全性问题 1.首先明确String,StringBuffer,StringBuilder的区别: String是字符串常量,StringBuffer与Stri...原创 2019-08-29 13:58:12 · 191 阅读 · 0 评论 -
Spring中bean的单例与多例
Spring中bean的单例与多例前言Spring中单例与多例如何配置单例/多例单例/多例Bean的使用事项总结 前言 之前其实已经学习过对于单例模式的使用单例模式讲解,也用过一段时间的SpringMVC与SpringBoot,但其实一直没有去关注Spring中bean的单例/多例的使用,这里由于最近想要在Springboot项目中创建一个单例的工厂类,才发现Spring中bean其实默认就是单例...原创 2019-09-03 09:41:24 · 1256 阅读 · 0 评论 -
多线程下ThreadLocal的使用
ThreadLocal入门 ThreadLocal是什么 首先,它是一个数据结构,有点像HashMap,可以保存key-value键值对,但是一个ThreadLocal只能保存一个,并且各个线程的数据互不干扰。 ThreadLocal<String> localValue = new ThreadLocal(); localValue.set("Here is a value"); S...转载 2019-09-06 15:48:56 · 474 阅读 · 0 评论