另一鲜为人知的单例写法-ThreadLocal 源代码范例 当我阅读FocusFinder和Choreographer的时候,我发现这两类的单例实现和我们寻经常使用双重检查锁非常不一样。而是用来一个ThreadLocal。这个也能够实现单例啊,那这个与双重检查锁实现的单例有什么差别呢? 1.Focu ...
分类:
其他好文 时间:
2017-08-15 16:02:15
阅读次数:
206
还有一鲜为人知的单例写法-ThreadLocal源码范例当我阅读FocusFinder和Choreographer的时候,我发现这两类的单例实现和我们平常用双重检查锁很不一样。而是用来一个Thread...
分类:
其他好文 时间:
2017-04-02 18:54:39
阅读次数:
170
GT源码:https://github.com/TencentOpen/GT 一.流畅度模块的代码结构 流畅度插件总共就几个类,其实处理方式也比较简单粗暴,就是通过Choreographer输出的log信息获取跳帧数据。SMActivity.java为插件的入口类,你可以通过预设环境操作来实现log ...
分类:
其他好文 时间:
2016-12-29 22:47:11
阅读次数:
634
想系统性的学习一下android动画,但是在学习前,还是需要先了解Choreographer,这样才能更好的了解动画
分类:
移动开发 时间:
2016-10-30 17:14:44
阅读次数:
515
通过Choreographer的回调次数检测当前时刻运行的流畅度,原理参看:http://bugly.qq.com/blog/?p=166
正常一秒会有60次的回调
import android.app.Activity;
import android.util.Log;
import android.view.Choreographer;
public class ...
分类:
移动开发 时间:
2015-05-13 12:57:04
阅读次数:
158
在Android系统中,一个Activity对应一个应用程序窗口,任何一个Activity的启动都是由AMS服务和应用程序进程相互配合来完成的。AMS服务统一调度系统中所有进程的Activity启动,而每个Activity的启动过程则由其所属进程来完成。AMS服务通过realStartActivityLocked函数来通知应用程序进程启动某个Activity...
分类:
移动开发 时间:
2014-07-02 06:53:36
阅读次数:
360