首页
AI Coding
NEW
沸点
课程
直播
活动
AI刷题
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
确定删除此收藏集吗
删除后此收藏集将被移除
取消
确定删除
确定删除此文章吗
删除后此文章将被从当前收藏集中移除
取消
确定删除
编辑收藏集
名称:
描述:
0
/100
公开
当其他人关注此收藏集后不可再更改为隐私
隐私
仅自己可见此收藏集
取消
确定
多线程
订阅
斯缔璺
更多收藏集
微信扫码分享
微信
新浪微博
QQ
11篇文章 · 0订阅
AQS抽象的队列同步器
AQS是用来构建锁或者其他同步器组件的重量级基础框架及整个JUC体系的基石。AQS定义了一套多线程访问共享资源的同步器框架,许多同步类实现都依赖于它,如常用的ReentrantLock、Semapho
一文带你怼明白进程和线程通信原理
进程是需要频繁的和其他进程进行交流的。例如,在一个 shell 管道中,第一个进程的输出必须传递给第二个进程,这样沿着管道进行下去。因此,进程之间如果需要通信的话,必须要使用一种良好的数据结构以至于不能被中断。下面我们会一起讨论有关 进程间通信(Inter Process Co…
Synchronized锁在Spring事务管理下,为啥还线程不安全?
简单来说:多线程跑一个使用synchronized关键字修饰的方法,方法内操作的是数据库,按正常逻辑应该最终的值是1000,但经过多次测试,结果是低于1000。这是为什么呢? 既然测试出来的结果是低于1000,那说明这段代码不是线程安全的。不是线程安全的,那问题出现在哪呢?众所…
线程安全(中)--彻底搞懂synchronized(从偏向锁到重量级锁)
通过对一个对象进行加锁来实现同步,如下面代码。 对一个方法进行synchronized声明,进而对一个方法进行加锁来实现同步。如下面代码 但这里需要指出的是,无论是对一个对象进行加锁还是对一个方法进行加锁,实际上,都是对对象进行加锁。 也就是说,对于方式2,实际上虚拟机会根据s…
【Java】留下没有基础眼泪的面试题
程序在执行时,多线程是CPU通过给每个线程分配CPU时间片来实现的,时间片是CPU分配给每个线程执行的时间,因时间片非常短,所以CPU通过不停地切换线程执行。 无锁并发编程。多线程竞争时,会引起上下文切换,所以多线程处理数据时,可以用一些办法来避免使用锁,如将数据的ID按照Ha…
Java 中的多线程你只要看这一篇就够了
java 多线程
Reactor模型
要无障碍阅读本文,需要对NIO有一个大概的了解,起码要可以写一个NIO的Hello World。 说到NIO、Netty,Reactor模型一定是绕不开的,因为这种模式架构太经典了,但是好多人在学习的时候,往往会忽视基础的学习,一上来就是Netty,各种高大上,但是却没有静下心…
一文带你彻底理解同步和锁的本质(干货)
文章迁移,导致内容损坏,新链接,301手动重定向:https://juejin.im/post/6860125321149022221/
2万字Java并发编程面试题合集(含答案,建议收藏)
15、什么是 FutureTask?使用 ExecutorService 启动任务。 java 中的线程分为两种:守护线程(Daemon)和用户线程(User)。 任何线程都可以设置为守护线程和用户线程,通过方法 Thread.setDaemon(boolon);true 则把…
ReentrantLock 及 AQS 浅谈
AQS 全称 AbstractQueuedSynchronizer, 是 java 并发包中的一个类,该类更像是一个框架,提供了一些模板方法供子类实现,从而实现了不同的同步器,如下图所示。ReentrantLock,ReentrantReadWriteLock,ThreadPoolExecutor 这些常见类都使用了 AQS。