前言
作为一名刚刚接触编程的初学者,被这个领域的神奇魅力所深深吸引。代码犹如魔法棒,能够改变世界,为我们的生活带来便捷和创新。
然而,现实往往与理想相去甚远。随着时间的推移,逐渐发现当前的环境并不理想。在这个竞争激烈的行业中,工作机会显得愈发稀缺。即使拥有扎实的编程技能,也可能因为种种原因与理想的岗位失之交臂。
代码能不能改变世界世界不知道,这逼工作是真不好找啊!
109和22这串数字我会永远记得
我刚刚结束了109天的失业生活,期间面试了22家公司。回顾这段日子,我的心情像窗外的雨滴一样低落。
我是一个三本毕业的程序员,这在很多人看来可能并不值得骄傲。在我毕业后的几年里,我一直在一家小型互联网公司工作,虽然工作还算稳定,但我总觉得自己的技术水平还有待提高。当我意识到这一点时,我决定要提升自己,于是我决定辞职,寻找更好的机会。
然而,现实并没有我想象的那么顺利。在失业的这段时间里,我开始感到焦虑和迷茫。我不停地投简历,参加面试,但是得到的回应却少之又少。每次面试失败,我都会对自己产生怀疑,甚至想过放弃。但是,我心里始终有一个声音告诉我:不能放弃,只要坚持下去,总会有机会的。
在失业的第109天,我终于收到了一个面试邀请。这家公司是我梦寐以求的,我为此做了充分的准备。在面试过程中,我展示了自己的实力,赢得了面试官的认可。就这样,我收到了4个offer,其中一个给我涨薪百分之十。这个消息让我兴奋不已,同时也给了我更大的信心。
回想起这段日子,我感慨万千。失业的日子虽然痛苦,但它也让我更加珍惜机会,更加努力。现在,我即将开始新的工作,我相信,只要我保持对技术的热情,不断学习和提高自己,我一定能够在这个行业中取得更大的成就。
最后,我想对所有正在找工作的朋友们说:不要放弃,坚持下去,胜利就在眼前。
以下是我这些天整理的面试题,希望找工作的朋友能用上。
● Handler的实现原理
● 子线程中能不能直接new一个Handler,为什么主线程可以主线程的Looper第一次调用loop方法,什么时候,哪个类
● Handler导致的内存泄露原因及其解决方案
● 一个线程可以有几个Handler,几个Looper,几个MessageQueue对象
● Message对象创建的方式有哪些 & 区别?
● Message.obtain()怎么维护消息池的Handler 有哪些发送消息的方法
● Handler的post与sendMessage的区别和应用场景
● handler postDealy后消息队列有什么变化,假设先 postDelay 10s, 再postDelay 1s, 怎么处理这2条消息
● MessageQueue是什么数据结构
● Handler怎么做到的一个线程对应一个Looper,如何保证只有一个MessageQueue ThreadLocal在Handler机制中的作用
● HandlerThread是什么 & 好处 &原理 & 使用场景
● IdleHandler及其使用场景
● 消息屏障,同步屏障机制
● 子线程能不能更新UI
● 为什么Android系统不建议子线程访问UI
● Android中为什么主线程不会因为Looper.loop()里的死循环卡死
● MessageQueue#next 在没有消息的时候会阻塞,如何恢复?
● Handler消息机制中,一个looper是如何区分多个Handler的
● 当Activity有多个Handler的时候,怎么样区分当前消息由哪个Handler处理
● 处理message的时候怎么知道是去哪个callback处理的
● Looper.quit/quitSafely的区别
● 通过Handler如何实现线程的切换
● Handler 如何与 Looper 关联的
● Looper 如何与 Thread 关联的
● Looper.loop()源码
● MessageQueue的enqueueMessage()方法如何进行线程同步的
● MessageQueue的next()方法内部原理
● 子线程中是否可以用MainLooper去创建Handler,Looper和Handler是否一定处于一个线程
● ANR和Handler的联系
标签:MessageQueue,22,offer,109,涨薪,面试,Handler,线程,Looper
From: https://blog.51cto.com/u_16175637/7609178