面试困难户

谁能给我讲讲多线程,多线程并发,和锁有关系吗?数据库索引,多个索引的时候是怎么弄,或者怎么用,JVM内存,加载机制,多态的底层实现,这些晦涩难懂的知识😳,面试常问到,我已跪了😭,常常感觉自己答了个表面
全部评论
推荐并发编程的艺术,深入理解java虚拟机
点赞 回复 分享
发布于 2017-10-01 22:52
鄙视那些推荐一堆书单的。如果你现在已经面临面试,别浪费时间去看书。快速获取你面试所需要的知识点足以。 多线程并发和锁有关系吗?我真不知道你为什么会问这种问题。JVM中每个线程共享堆内存和方法区(Java 8实现叫metaspace),资源共享,意味着你多线程对共享资源进行修改操作,只要修改的整个过程不是原子的,就会出现一系列问题。 你要解决这种问题,你就要加锁,这可以引出Java的锁机制,Synchronized、ReentrantLock,重量级锁,为什么重量级?后来做了什么优化?偏向锁、轻量级锁。从而还可以引出Java的并发包,最喜欢问你ConcurrentgHashMap,如何实现同步?从JDK 1.7的segment到JDK 1.8的CAS+Synchronized。 索引去看看索引有那些实现,原理是什么,最常见的当然就是B+树,左匹配原则。 JVM内存,,,这不是常识吗? 多态实现,类加载解析阶段的晚期绑定,涉及方法表的方法签名等。
3 回复 分享
发布于 2017-10-02 22:09
找几篇博客看看
点赞 回复 分享
发布于 2017-10-02 08:12
并发编程的艺术,深入理解Java虚拟机,(Java并发编程实践),Java高并发程序设计,MySQL技术内幕: innoDB存储引擎。好吧,又变成列书单了,,,
点赞 回复 分享
发布于 2017-10-02 21:19
多个线程同时一个变量写操作,那么最后就只有一个线程的写起了作用,其他都被覆盖了,所以只有拿到锁的线程才能执行任务,保证其串行执行。当你想提高查询效率,可以对sql语句涉及的字段加上联合索引,这里又会牵扯到最左前缀匹配。jvm内存和加载都比较好理解,google几篇相关的博文认真读完。以上知识点每一个先了解大概的框架,为什么要这样做,再将文章中不懂的知识细节每一个都搞懂。坚持看,写一些demo测试,一两个礼拜就会有收获的。
点赞 回复 分享
发布于 2017-10-02 22:14

相关推荐

点赞 评论 收藏
分享
2024-12-26 20:46
复旦大学 C++
国棉17厂丶小王:拿了offer的那个周末晚上去网吧通宵,去网吧不知道玩什么刷了lc的每日一题,然后试着第一次打开了三角洲行动,从此少了一个已经刷了700道题的lc用户,但是烽火地带多了一只🐭🐭
点赞 评论 收藏
分享
评论
5
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务