240 发简信
IP属地:重庆
  • Verifying方法调用

      在编写单元测试的时候,需要验证某些信息,或者是返回结果,或者是执行流程。一个没有任何结果验证的单元测试是没有任何意义的。对于存在返回值的方法,可以通过对返回值进行校验(使...

  • 如果看到这您依然觉得我说的不对,不妨思考一下为什么第二张图(jank.png)和第四张图(double_jank.png)中,jank的情况会不一样:第二张图jank之后在cpu准备好之后立马开始渲染下一帧,第四张图则是jank后等待下一帧开始(接收到VSync)后才会开始渲染下一帧画面,原因就是第二张图描绘的是没有VSync的情况,除了第二张图,其它图都是从每一帧的最开始,CPU就开始渲染

    Android 重学系列 SurfaceFlinger的概述

    前言 本文将会作为开启SurfaceFlinger的系列第一篇文章。然而SurfaceFlinger几乎贯通了整个Android领域中所有的知识。从HAL硬件抽象层到Fram...

  • 您写得非常好,但是关于几次jank的图貌似有误,第一张表达的是有垂直同步所以不出现jank,第二张想表达的是因为没垂直同步所以发生了jank,两张结合起来突出VSync的作用。而非文中说的没加缓冲时遇到jank的情况,这一点根据图片原本的配字也可以看出来,是Drawing with VSync。而第三第四张图想要表达的事实上是在多进程情况下使用双重缓冲,cpu和gpu性能被占用,不足以支持画面60帧是将引发jank,从而引出三重缓冲。如果按你文章的意思就变成了:没使用缓冲时,会发生jank,使用双重缓冲之后不仅没有改善,反而jank变得更加严重了。原图意思显然不是这样的。你可以看看这位写的:https://www.jianshu.com/p/fec752b8ac43

    Android 重学系列 SurfaceFlinger的概述

    前言 本文将会作为开启SurfaceFlinger的系列第一篇文章。然而SurfaceFlinger几乎贯通了整个Android领域中所有的知识。从HAL硬件抽象层到Fram...

  • 如何用Javafx开发一个图片剪裁器

    需求 在微信生态圈内,图片需要符合9:5的标准,常见的大小包括600*275、900*500等。为了满足需求,需要开发一个照片剪裁器,能够按照选定的标准进行照片剪裁。 分析 ...