克里斯的牛站 level
获赞
14
粉丝
4
关注
24
看过 TA
97
University of Wisconsin Madison
2025
Java
IP属地:浙江
暂未填写个人简介
私信
关注
好文记录锁:https://mp.weixin.qq.com/s/HgXbSBbyruEQXz42R46MEg美团cf实战:https://tech.meituan.com/2022/05/12/principles-and-practices-of-completablefuture.html美团线程池实战:https://tech.meituan.com/2020/04/02/java-pooling-pratice-in-meituan.htmlJava 并发(进阶)1. 什么是线程和进程?线程与进程的关系,区别及优缺点?2. 为什么要使⽤多线程呢?- 因为更多利用计算机资源,减少上下文切换3. 什么是上下⽂切换?- 线程的运行条件和状态,程序计数器,栈- 多线程减少线程重启,减少上下文切换- 思考:IO密集型上下文切换高vs.cpu密集型线程切换高4. 什么是线程死锁?如何避免死锁?- 两个线程获得了对方的资源,获取1等待2,一个获取2等待1。- 破环任意一个四大原则,少资源,非抢占,静态分配,层次分配- 静态分配:执行前获得所有他要的资源- 层次分配:所有资源分成多个曾,只有获得低层才能获得高层5. 乐观锁和悲观锁了解么?如何实现乐观锁?- 略6. 说说 sleep() ⽅法和 wait() ⽅法区别和共同点?- wait时monitor lock,sleep是操作系统- Thread.sleep(): 不是改变monitor lock,而是通过操作系统暂停线程。可以理解为谁执行这个方法谁就sleep。- 再t2中执行t1.sleep()最终也会转为Thread.sleep(),还是t2被sleep了。7. 讲⼀下 JMM(Java 内存模型)。 - 一个开发需要遵守的规范- a. 类似于cpu缓存,java有主内存和本地内存- b. 关于重排序的happens-before原则8. Java 内存区域和 JMM 有何区别?- 内存区是物理分区,jmm是对编程的规范9. happens-before 原则- 要求禁止重排序,但
0 点赞 评论 收藏
转发
牛客网
牛客企业服务