关于课程内容

来源:6-4 surface的绘制原理

全是甘货

2019-05-05

看售前课程介绍的时候,看到了会有Vsync的相关讲解。
可是购买以后,看了下课程目录以及整个第六章,好像又没有Vsync的讲解。

讲Vsync的话,最好可以结合一下systrace来讲,这样会直观很多,因为在systrace上面有几个问题我还不够清晰。
第一:Vsync,surfaceFlinger,Choeographer三者的互动。
第二:关于dispSync,appEventThread,sfEventThread这三个信号跟vsync-app,vsync-sf的联系(有时候出现appEventThread,不一定就出现vsync-app)。
第三:app冷启动以后,通常第一两个Choeographer,他不能直接找到触发它(Choeographer)的appEventThread,而当启动完成后,appEventThread往往就能让Choeographer运作【原因可能是:
虽然通知测量布局绘制的信号发回来了,可是冷启动过程Cpu还有很多事情要做,导致Choeographer不能立马进行工作,但是老师你也说到Choeographer发了一个barrier能挡住其他任务,让Choeographer优先绘制】

还是很高兴能接触到老师这门课程!

写回答

1回答

风语

2019-05-05

您好,谢谢您的提问和建议,

vsync是在第六章的"6.1屏幕刷新机制"的时候涉及到的,章节目录没有直接出现vsync字样,主要是因为从面试的角度来说,直接问刷新机制综合性更强一点,可以涉及choreographer,vsync和surfaceFlinger三个方面

另外,刷新机制如果详细展开涉及到的内容非常多,6.1这节课已经是这门课程里时间最长的课了,所以从课程设计的角度来说,我个人做出了一些取舍,重点放在choreographer的实现机制,vsync信号的基本原理,以及vsync是如何从surfaceFlinger分发到应用的,我个人觉得作为一个面试题了解到这些是足够了。至于其它的问题比如说vsync信号具体是怎么产生的,surfaceFlinger里面的eventThread的实现细节等等,都不再继续深究。当然,如果学员能有兴趣继续深入研究下去那非常好,而且也欢迎交流。

0
0

剖析Framework面试 冲击Android高级职位

一手助力冲刺Android高级职位,一手把握系统底层原理,理清面试思路,提升技术段位

1406 学习 · 187 问题

查看课程