![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
多线程
文章平均质量分 64
北漂的菜小白
写代码是我的爱好,做专栏只为了混口饭吃
展开
-
优化记录 -- 记一次搜索引擎(SOLR)优化
solr 调优原创 2023-11-22 10:57:15 · 2773 阅读 · 1 评论 -
记录----RabbitMQ踩坑(一)
用户触发某种行为动作,根据行为类型,分别执行延迟30s处理数据动作,和立即处理数据重做两种业务方案一:Redis key监听器,但是考虑实际key数量,放弃该方式方案二:方案RabbitMQ延迟队列实现,程序同时监听两种队列即可,简单方便因为不熟悉RabbitMQ相关配置,导致很多奇奇怪怪的问题,特此记录理由: 如下如下二、同时监听多个队列消费者代码如下生产者篇因生产者和消费者框架不同,配置方式不太一样,生产者为Spring MVC业务触发入口Listener 生产者踩坑详解以上代码上原创 2022-06-23 23:25:09 · 718 阅读 · 2 评论 -
aqs相关知识点记录
AQS是什么抽象队列同步器,一个抽取了MESA模型的抽象类,封装了一些操作MESA的基本方法AQS能做什么AQS是JUC包的基础,基本上都是依靠aqs去实现的,用于多线程同步操作,即,同一时间,只有一个线程在执行AQS需要理解的属性state用于表示node.head是否持有锁当state为0时,当前线程不持有锁node同步队列的节点,AQS中,同步队列是一个双向链表,每个线程都是一个node,并且,每个线程,都在一个 for(;;)中park,当node.head开始执行,并且stat原创 2021-12-08 11:27:13 · 229 阅读 · 0 评论 -
java线程池的理解
java在创建线程的时候,只是创建一个对象而已在调用start()时,是真的创建了一个OS的线程,OS线程去执行run方法内容而线程池的特点是在JVM启动时先创建最小线程数目的线程从而避免了频繁创建OS线程,消耗OS资源,而且只要OS线程不被关闭,OS线程就可以重复的执行javaThread的run函数CPU执行线程的时候,就是靠着调度器去执行了,这里的就不是很清楚了,太偏向操作系统了...原创 2020-05-29 13:28:22 · 106 阅读 · 1 评论 -
多线程-锁和demo(未完待续)
一、ReentrantLock :类型:独占锁、可重入锁、公平锁(构造方法传入true)、非公平锁(构造方法传入false、默认)、互斥锁使用时注意事项:加锁和释放锁需要手动实现,且次数需要相同 private static final ReentrantLock LOCK = new ReentrantLock();public void demo(){ // 加锁 L...原创 2020-04-14 11:23:16 · 133 阅读 · 0 评论 -
多线程的几种锁
所有锁的前提是 synchronized 条件下:重入锁:线程1:执行方法A,方法A中执行方法B,则产生重入锁,即不需要等待获取锁中断锁:ReentrantLock使用synchronized修饰的方法,在阻塞状态blocked时不能被外部打断,除非jvm报错.使用ReentrantLock中的lockInterruptibly()处于阻塞状态时, 可以被打断.注:如果希望可以被打断...原创 2019-12-05 17:20:02 · 1233 阅读 · 0 评论 -
synchronized 相关
synchronized :用法:1.可以写在方法上,表示方法是同步的,用于保证线程安全2.用于同步代码块中 synchronized(xxx){…}注意事项:1.用于方法上:此时如果多个线程竞争该方法时,锁住的是该类对象的实例2.同步代码块(1) synchronized(this){…} 锁住的仍然是当前对象的实例(2) Object lock = new Object()...原创 2019-11-27 15:00:31 · 93 阅读 · 0 评论 -
线程池的学习
个人理解,线程池就是创建线程对象(继承 Thread 或者 实现 Runable接口的类,并重构 run 方法,注:不要start(),也不要.run()执行该对象),然后用线程池对象调用execute(线程对象)方法进行提交准备执行的线程部分踩坑情况1、线程池的选择:归根结底线程池都是实现自 Executor 接口,因此,注入对象时应根据依赖倒转原则使用抽象类型,而不是具体实例2、线程池...原创 2019-10-21 22:22:30 · 76 阅读 · 0 评论 -
多线程 notify和notifyAll
原创 2019-09-03 11:07:22 · 401 阅读 · 0 评论