解决方案 »
- ANDRIOD客户端提取WAP网址
- 想做个wifi程序作为AP热点,求指导
- listview中增加一个ImageView放在头部的问题,在线等
- 呃......学习Android......求指导
- 关于style.xml中的两个问题
- 我的Service为什么不运行了?
- 在android系统的MID上面安装驱动程序!
- android底部半透明个性化菜单功能如何实现
- android sdk 运行时报错,求大神帮忙
- Android MediaPlayer为什么监听不到视频播放结束
- Cursor 放在finilly中也关不掉 报错,闪退
- Android File.length() 获取相册图片文件大小出错
http://www.2cto.com/kf/201401/270833.html
所以vsync信号不是一直在发送的,而是按照需求来发出的。
那什么时候会需要发呢?我这好像之后一直没有收到enableVsync,这是为什么?
那什么时候会需要发呢?我这好像之后一直没有收到enableVsync,这是为什么?app需要刷新的时候会enable。但是如果你是android kitkat版本,又有些差异,4.4引入了dispsync,绝大多数时候是使用的software的vsycn,不会需要hwc发出vsync信号了,这种情况下vsync正常就不需要被enable了,只有在software vsync需要校正的时候才会enable。
我用的确实是4.4. 您说的software的vsycn是
HWComposer::HWComposer()中的 mVSyncThread = new VSyncThread(*this); 吗?
但这个因为mHwc存在没有执行啊?
我用的确实是4.4. 您说的software的vsycn是
HWComposer::HWComposer()中的 mVSyncThread = new VSyncThread(*this); 吗?
但这个因为mHwc存在没有执行啊?不是的,是DispSync这个class,你看看他的使用。
我把HWC_DISPLAY_VSYNC_PERIOD 设为了40*1000000,
在
SurfaceFlinger::onMessageReceived()
case MessageQueue::REFRESH:
加上了
ALOGD("#%d", (unsigned int)(systemTime()/1000000)); 发现SurfaceFlinger 的refresh好像每隔200ms左右才被调用一下,即便是在显示视屏。这是不是不正常啊?
你可以用systrace去抓取下信息看看。
我用systrace抓下来的html只显示了cpu,这是什么原因?