柠檬微趣 一面挂
最汗流浃背的一次,第二天就感谢信了
1 hashmap底层,这个没什么问题
2 多线程写日志,多个线程可能是处理同一个任务,因此会写同一个日志,请设计方案
这个和面试官扯了好久,每次回答都往细节追问
楼主的方案主要是 写副本文件,然后合并,其中使用锁,缓存等
3 两个小问题
多线程同时修改同一个变量为什么不行
过了一会才觉得是个计组的问题。 这肯定不会的,布氏哥们
mysql b➕树。 为什么走一层就是一次磁盘io
1 hashmap底层,这个没什么问题
2 多线程写日志,多个线程可能是处理同一个任务,因此会写同一个日志,请设计方案
这个和面试官扯了好久,每次回答都往细节追问
楼主的方案主要是 写副本文件,然后合并,其中使用锁,缓存等
3 两个小问题
多线程同时修改同一个变量为什么不行
过了一会才觉得是个计组的问题。 这肯定不会的,布氏哥们
mysql b➕树。 为什么走一层就是一次磁盘io
全部评论
多线程同时操作一个变量,可以从汇编的角度简单理解:
i++可以分成一下几步(可能不太准确)
1、寄存器加载这个位置的数
2、add指令
3、赋值
多线程环境下共享的变量i,所有代码会转换成低级语言,也就是汇编指令,当两个线程同时操作时可能会因为语句执行先后顺序导致出现问题
相关推荐
查看19道真题和解析
点赞 评论 收藏
分享