首页
AI Coding
NEW
沸点
课程
直播
活动
AI刷题
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
小猴子的技术笔记
掘友等级
获得徽章 0
动态
文章
专栏
沸点
收藏集
关注
作品
赞
26
文章 26
沸点 0
赞
26
返回
|
搜索文章
赞
文章( 26 )
沸点( 0 )
Java线程设置了优先级,就一定生效吗?Java线程的priority源码解析
欢迎大家搜索“小猴子的技术笔记”关注我的公众号,有问题可以及时和我交流。 我模拟了三个不同优先级别的线程,在构建完成之后“同时”启动,然后观察结果。也请你尝试把这些代码拷贝到你的开发工具中,然后尝试运行“ThreadPriorityTest”,也许第一次你看到的结果是这样的: …
Java内存模型JMM详细解析
欢迎大家搜索“小猴子的技术笔记”关注我的公众号,有问题可以及时和我交流。 在并发编程中,线程之间如何通信以及线程之间如何同步是需要处理的两个关键问题。 线程通信指的是线程A和线程B之间以何种机制来交换信息。在命令式编程中,线程之间的通信机制有两种:共享内存和消息传递,下面就来简…
详细解析Java内存,处理器重排序,编译器重排序以及它对线程的影响
欢迎大家搜索“小猴子的技术笔记”关注我的公众号,有问题可以及时和我交流。 我们在编写程序的时候有一个编写代码的顺序,那么计算机执行的时候就是按照我们编写代码的顺序来执行的吗?答案是:不一定。如果两个代码之间没有依赖关系的话,那么编译器和处理器常常会对我们的编码指令重排序。重排序…
图文带你了解volatile底层和内存屏障之间的关系
欢迎大家搜索“小猴子的技术笔记”关注我的公众号,有问题可以及时和我交流。 为了保证内存的可见性,Java编译器会在生成指令序列的适当位置插入内存屏障指令来禁止特定类型的处理器重排序。JMM被内存屏障指令分为了4类(Load表示读,store表示写): LoadLoad Barr…
经典的面试题~DCL需不需要被volatile关键字修饰?为什么?
欢迎大家搜索“小猴子的技术笔记”关注我的公众号,有问题可以及时和我交流。 DCL(Double-Checked Locking)双重检查锁。在Java的多线程中,有时候需要采用延迟初始化来降低初始化类和创建对象的开销,使用双重检查所是常见的延迟初始化的技术。但是,要正确使用线程…
深入了解--线程中断 “interrupt()","isInterrupted()"和"interrupted()”-超详细介绍
欢迎大家搜索“小猴子的技术笔记”关注我的公众号,有问题可以及时和我交流。 中断可以理解为线程的一个标识位属性,它表示一个运行中的线程是否被其他线程进行了中断。在日常开发中,经常使用中断标识来进行线程的安全终止。 Thread 给我们提供了三个有关中断的方法“interrupt(…
深入详细了解synchronized底层原理
欢迎大家搜索“小猴子的技术笔记”关注我的公众号,有问题可以及时和我交流。 在多线程之间,共享变量的值是线程不安全的,因为线程在开始运行之后都会拥有自己的工作空间,而从自己工作空间把修改的值刷新回主存的时候需要CPU的调度。因此,一个线程看到的变量可能并不是最新的。 我们假设有个…
详细介绍Java线程的生命周期
NEW:通过阅读官方给提供的源码注释可以了解,“NEW”表示线程还没有被启动的时候的状态。那么什么是还没有被启动呢?我们假设有一个实现了Runnable接口线程类。 下面构建了一个线程,但是还没有调用“start()”方法,没有调用“start”方法之前,这个线程就是处于“NE…
JWT工具类
欢迎大家搜索“小猴子的技术笔记”关注我的公众号,有问题可以及时和我交流。 成功引入jar包之后就可以进行token的生成了。之后需要指定一个加密的算法,也就是需要你自己提供一个秘钥串来进行加密。你可以把它理解为之前做MD5加密的时候加上的盐值。 然后我们就可以利用jar包中的方…
详述图片base64加密的原理,告诉你什么是"/9j/"
欢迎大家搜索“小猴子的技术笔记”关注我的公众号,有问题可以及时和我交流。 在日常的生活中,我们肯定都经历过类似这样的场景:报名考试上传图片,网站要求的是上传的照片不能大于多少,而且要求是“.jpg”的格式。 欢迎大家搜索“小猴子的技术笔记”关注我的公众号,有问题可以及时和我交流…
下一页
个人成就
文章被点赞
49
文章被阅读
15,263
掘力值
650
关注了
0
关注者
6
收藏集
0
关注标签
0
加入于
2020-11-26