![](https://img-blog.csdnimg.cn/931701418e0b476e945a44e04f739df0.jpeg?x-oss-process=image/resize,m_fixed,h_224,w_224)
面试题
文章平均质量分 51
面试资料
上官玺
一个人,一双手,一台电脑,一个又一个夜晚创造一个又一个奇迹
展开
-
【多线程】死锁是怎么产生的?
一个线程需要同时获取多把锁,这时就容易发生死锁。t1 线程获得A对象锁,接下来想获取B对象的锁。t2 线程获得B对象锁,接下来想获取A对象的锁。原创 2022-10-04 11:29:10 · 155 阅读 · 0 评论 -
wait vs sleep区别
wait() ,wait(long) 和 sleep(long) 的效果都是让当前线程暂时放弃 CPU 的使用权,进入阻塞状态。2.wait(long) 和 wait() 还可以被 notify 唤醒,wait() 如果不唤醒就一直等下去。wait 方法执行后会释放对象锁,允许其它线程获得该对象锁(我放弃 cpu,但你们还可以用)1.执行 sleep(long) 和 wait(long) 的线程都会在等待相应毫秒后醒来。wait 方法的调用必须先获取 wait 对象的锁,而 sleep 则无此限制。原创 2022-10-03 23:10:18 · 225 阅读 · 0 评论 -
ThreadLocal
ThreadLocal 的作用与原理以及内存释放时机原创 2022-10-03 21:56:26 · 119 阅读 · 0 评论