1. glfwInit()   和  glfwTerminate()  放在主线程

   循环次数 1    内存   14M

  循环次数100    46M

  循环次数1000   49M

2.  glfwInit()   和  glfwTerminate()    放在线程里   globalInit   and globalRelease

   循环次数 1    内存   13M

  循环次数100    87M

  循环次数1000   426M

3.  glfwInit()   和  glfwTerminate()    放在线程里   但是只初始化一次  说明在openDLL的情况下不能只初始化一次!!!

   循环次数 1    内存

  循环次数100

  循环次数1000

4.  glfwInit()   和  glfwTerminate()    放在线程里   每次都初始化, createWindow打开

   循环次数 1    内存  14M

  循环次数100    内存 89M

  循环次数1000   内存458M

5. 在上一步的基础上 把run打开

   循环次数 1    内存  14M

  循环次数100    内存 62M

  循环次数1000   内存453M

6.   在上一步基础上   global  只初始化一次   注释 closeDll

   循环次数 1   87 M

  循环次数 2 崩溃  说明closeDll 后  数据都被破坏了  error:0X10001 : The GLFW library is not initialized

7.  在上一步基础上   global  初始化写在线程里, 且每次都初始化  不使用closeDll

   循环次数 1    内存  17M

  循环次数100    内存 65M

  循环次数1000   内存436M

8.  在上一步基础上  global 写在外部   使用closeDll      ------>   建议使用

   循环次数 1    内存  15M

  循环次数100    内存 54M

  循环次数1000   内存 55M

9  transcoder 调用 so @8

   循环次数 1    内存  119M

  循环次数  2    内存 382M

  循环次数  3   内存 528M

10 20 上   ./one 10000   内存210M

11   不调用shader 、 texture ,   运行7次, 20 上内存最大到110M

12  pthread   100 次   线程设置为detached   ./test    490M

13  std::thread   100 次   线程设置为detached   ./test    244M

14 pthread   100 次   线程设置为join ./test    80M

15  thread   100 次   线程设置为join ./test    111M

16 pthread   100 次   线程设置为join ./test  每次liboper 100次   80M

16 pthread   100 次   线程设置为detach   ./test  每次liboper 100次   2.99G

17   if(frame_count==0){

}return ;   有泄漏

18

17   if(frame_count==0){

//glx   注释glx

}return ;   没泄漏    第二次迭代内存升到496M   随后就恢复正常    110M

19

原版

7-8 次迭代后就内存不增加了  1.1G 左右

20 tranc_off    如果创建窗口  每次增加780M    用1080p测试

  如果不创建窗口一直是110M不增加

glfw内存泄露测试的更多相关文章

  1. Android 内存泄露测试数据处理--procrank,setprop,getprop(转)

    1.Android内存测试常用的几个概念. VSS--virtual set size 虚拟耗用内存(包含共享库占用的内存)RSS--Resident set size实际使用的物理内存(包含共享库占 ...

  2. Android内存泄露测试

    Android性能测试过程中的一些常用命令: CPU: adb shell top -n | grep "+PackageName 内存: adb shell dumpsys meminfo ...

  3. android 内存泄露测试

    Android 程序由java语言编写,android的内存管理与java相似,通过new为对象分配内存,所有对象在java堆内分配空间,对象回收有个垃圾回收器来完成.GC就是垃圾收集的意思(Gaba ...

  4. 移动端测试===Android内存泄露和GC机制(转)

    本文转自:https://www.testwo.com/article/1153 1.前言 Hello,小伙伴们,相信大家在项目测试中都遇到过内存泄露问题,小编也着实爬过很多坑.比如小编所测项目,更换 ...

  5. 内存测试——内存泄露工具 LeakCanary

    项目地址 https://github.com/square/leakcanary 接入方法 1. 配置依赖 dependencies { debugCompile 'com.squareup.lea ...

  6. android手机测试中如何查看内存泄露

    (一) 生成.hprof文件生成.hprof 文件的方法有很多,而且Android 的不同版本中生成.hprof 的方式也稍有差别,我使用的版本的是2.1,各个版本中生成.prof 文件的方法请参考: ...

  7. java: web应用中不经意的内存泄露

    前面有一篇讲解如何在spring mvc web应用中一启动就执行某些逻辑,今天无意发现如果使用不当,很容易引起内存泄露,测试代码如下: 1.定义一个类App package com.cnblogs. ...

  8. 查看w3wp进程占用的内存及.NET内存泄露,死锁分析

    一 基础知识 在分析之前,先上一张图: 从上面可以看到,这个w3wp进程占用了376M内存,启动了54个线程. 在使用windbg查看之前,看到的进程含有 *32 字样,意思是在64位机器上已32位方 ...

  9. C++11 shared_ptr 智能指针 的使用,避免内存泄露

    多线程程序经常会遇到在某个线程A创建了一个对象,这个对象需要在线程B使用, 在没有shared_ptr时,因为线程A,B结束时间不确定,即在A或B线程先释放这个对象都有可能造成另一个线程崩溃, 所以为 ...

随机推荐

  1. MySql 三大知识点——索引、锁、事

    作者:莫那鲁道原文:http://thinkinjava.cn/2019/03/16/2019-03-16-mysql/ 1. 索引 索引,类似书籍的目录,可以根据目录的某个页码立即找到对应的内容. ...

  2. DOM 是什么,Document Object Model,文档对像模型

    #为什么会想起来写这个 在写dynaTrace Ajax的时候,写到这个是个前端性能测试工具,这个工具能记录请求时间,前端页面渲染时间,DOM方法执行时间,以及JavaScript代码解析和执行时间. ...

  3. odoo开发笔记--定时任务源码分析

    场景描述: 处理思路: 参考文章: 定时任务相关: https://www.jianshu.com/p/ad48239f84d6 https://blog.csdn.net/M0relia/artic ...

  4. Wise Force Deleter 强制删除文件工具

    https://www.xitmi.com/3321.html   Wise Force Deleter v1.49 中文绿色版 强制删除文件工具

  5. (4)Flask项目模板渲染初体验

    一.准备静态资源 将项目使用到的静态资源拷贝到static目录 二.创建前台首页html 创建templates/home/home.html页面,内容包含导航和底部版权两部分,中间内容区域为模板标签 ...

  6. OpenShift上的OpenvSwitch入门

    前段时间参加openshift培训,通过产品部门的讲解,刷新了我对OpenShift一些的认识,今天先从最弱的环节网络做一些了解吧. Openvswitch是openshift sdn的核心组件,进入 ...

  7. WPF外包团队:2019 WPF数据监控系统案例演示

    项目版权均为客户所有,如有WPF项目外包欢迎联系我们. QQ:372900288 TEL:13911652504 WX:Liuxiang0884

  8. 自动化运维工具之SaltStack简介与安装

    1.SaltStack简介 官方网址:http://www.saltstack.com官方文档:http://docs.saltstack.comGitHub:https:github.com/sal ...

  9. idea打开Run Dashboard

    在springcloud中,通常会开启多个微服务.单个一个个开就很麻烦 如果没有发现,可以在工程目录下找.idea文件夹下的workspace.xml,在其中增加如下组件 <component ...

  10. C++和C API调用

    c++是C的超集,不可避免的要兼容C的特性,C++在C基础山的拓展部分叫做C with class,同时C++有自己特有的属性比如模板template. C并不完全是C++的子集. 那么如何在C/C+ ...