自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

日常学习笔记

杂七杂八的学习笔记

  • 博客(6)
  • 收藏
  • 关注

原创 什么情况下会使用到ReentrantLock的重入功能?

水果店推出了一套新购买方案,购买水果的时候也可以购买水果盒子,水果店免费帮助包装,并且水果价钱便宜1块,另外如果只是想购买水果盒子,水果店也是可以出售的。假设锁不支持重入,那会出现什么?那么线程就会在第二次lock.lock()的时候获取不到锁而阻塞,而想要释放锁,又需要该线程执行下去,这样就死锁了,所以可重入锁的使用场景就来了。当然,上面的需求也可以使用原子类AtomicInteger来实现,这里仅仅只是想说明一下,随着需求的增加,有时候锁的重入是难以避免的,所以支持重入是锁的一项重要功能。

2024-04-14 00:19:20 221 1

原创 Java线程状态的一点笔记

进入“阻塞”态是被动的,并不是由我们控制的,但是“等待”态是可以由我们进行控制的,然后还有对应的方法可以唤醒线程,使其从“等待”态变成“运行”态。在聊到“等待”的时候,Java里面进入“等待”(包括“超时等待”)有两个方法,一个是wait(),一个是sleep(),两者也是有区别的。了解了这些区别后,“超时等待”态就很好理解了,给“等待”态设置一个时间,等待时间到了,就唤醒线程,使其从“等待”变成“运行”。根据上面的图,我们还知道还有等待,也可以让线程“不执行”,那么这两者的区别是什么呢?

2024-04-11 23:02:50 260

原创 Redis缓存概念的基本了解篇

关于Redis缓存的一些应该了解的概念。

2023-05-18 20:04:52 285 1

原创 IDEA打开报错,如Key com.tang.intellij.lua.luacheck.LuaCheckSettings duplicated

记录IDEA在使用过程中遇到到一些问题。

2023-05-14 15:30:22 1295 2

原创 Maven的报错记录与解决方式

记录笔者在日常使用Maven的过程中遇到的一些异常问题与解决方式。

2023-05-12 21:46:22 4926 1

原创 算法学习记录

算法学习记录

2023-02-13 21:28:53 1235 3

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除