近来用到的几个技术点
2017-12-31 14:10
246 查看
mono的JIT在运行时会造成轻微的卡顿。为了避免这个卡顿对手感的影响,我们在进入游戏时就对局内的功能类做预编译。预编译很简单,调用一下函数指针即可。找到应该预编译哪些累则稍麻烦一些,要给mono加些日志,输出局内JIT编译的函数列表
局内关闭mono的GC,具体内容在之前的一篇博客中有介绍
Android平台内存分析。为了降低内存占用,我们对游戏进程在android平台上的内存占用进行了仔细的分析,除去各种资源和对象占用的内存,java内存,总是还有很多native内存不知道被什么占用了。后来我们在打开了调试选项的android系统上运行(手机的系统是我们自己编译的),这时通过ddms工具就可以看到所有so库的内存增量。进而发现有一些我们接入的第三方组件占用了不少内存。
项目到了一定规模以后,代码编译的时间大幅增加到了几分钟的时间。这对于开发效率影响很大。传统的优化方式是将不常改动的框架性代码挪到firstpass,实践的效果并不是很好。一个更好的方案是用微软的编译器替代mono的编译器。做一个编译命令的简单转发层,将mono的编译命令转发给微软的编译器。编译时间一下子降低到30秒左右。
想到再补充
局内关闭mono的GC,具体内容在之前的一篇博客中有介绍
Android平台内存分析。为了降低内存占用,我们对游戏进程在android平台上的内存占用进行了仔细的分析,除去各种资源和对象占用的内存,java内存,总是还有很多native内存不知道被什么占用了。后来我们在打开了调试选项的android系统上运行(手机的系统是我们自己编译的),这时通过ddms工具就可以看到所有so库的内存增量。进而发现有一些我们接入的第三方组件占用了不少内存。
项目到了一定规模以后,代码编译的时间大幅增加到了几分钟的时间。这对于开发效率影响很大。传统的优化方式是将不常改动的框架性代码挪到firstpass,实践的效果并不是很好。一个更好的方案是用微软的编译器替代mono的编译器。做一个编译命令的简单转发层,将mono的编译命令转发给微软的编译器。编译时间一下子降低到30秒左右。
想到再补充
相关文章推荐
- 自己做的几个小软件(数学工具和游戏),用C/C#制作,用到许多相关的C#技术细节,可以免费提供下载,感兴趣的,来看一下
- Android 开发中用到的几个多线程解析(代码示例)
- 随手记几个技术点
- 在b/s开发中经常用到的javaScript技术
- 在b/s开发中经常用到的javaScript技术整理
- 据说 这几个IT技术职位最挣钱 哈哈
- [导入]最近用到的觉得比较不错的几个tips-(1)asp。net操作ftp,上传和下载 (2) 长时间提交,在提交后禁止页面按钮 (3) 方便的javascript日历
- Java几个技术点,简单的说说学好Java必须弄懂哪些知识点
- 一般测试流程 常用的软件测试工具有哪些? 开源测试工具 软件测试一般用到的工具、框架、技术列表
- 经常用到的JavaScript技术
- 思考:关于搜索引擎抓取网页的几个技术问题
- java dom4j解析xml用到的几个方法
- php中经常用到的几个取整函数
- 分享几个程序员应该知道的网站和技术博客
- 一起谈.NET技术,.NET开发者常会忽略的几个错误
- 在b/s开发中经常用到的javaScript技术
- 针对于项目中用到的技术点的归纳{导出excel}
- 技术管理中常见的几个问题
- 要参加比赛 请问大牛 三维智能虚拟导游员 用到哪方面的技术
- 智能家居软件开发方向主要会用到些什么技术?