检查调试句柄泄漏


 Windows任务管理查看句柄数

任务管理–>查看–>选择列–>勾选“句柄数”

process explorer查看句柄详细信息

process explorer 中双击指定进程打开进程的properties窗口,切换到performance标签页,可以看到比任务管理器更详细的统计数据。

jubing

包括Handles/peak Handles/GDI Handles/USER Handles,peak Handles是句柄占用的峰值。据说Handles直接操作文件,注册表这类东西;而GDI Handles与USER Handles操作的是可见的东西。

Ctrl+H或通过工具栏打开下部窗格并切换到view handles查看句柄详情,找到泄漏的句柄详情。

使用Windbg检查调试句柄泄漏

Windbg提供了强大的扩展命令!htrace,即句柄跟踪(Handle Trace),可以通过操作系统来跟踪所有打开句柄或关闭句柄的调用以及相应的栈回溯,在Windbg输入”!htrace -?”,可以查看命令帮助。

1.运行目标程序,将Windbg附加到这个进程上。
2.然后在Windbg中输入”!htrace -enable”来开启栈回溯,然后通过g命令来运行被调试的程序。
3.执行程序完毕后,在Windbg中运行”!htrace -diff”来自动筛选出没有CLOSE的句柄的栈回溯信息
4.使用lsa 指令找到对应的代码,lsa handlew2!fun4+0x0000006f

还可以中断进程后,使用!htrace -snapshot命令,获得此时进程句柄的镜像,再次运行后使用”!htrace -diff”筛选。

gflags.exe工具可用来打开windows自带的一些调试选项辅助调试。

转载请注明出处:6san.com 
原文地址: http://www.6san.com/1037/

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/415508.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

小程序 获取 用户 unionid

首先明确,获取小程序的unionid需要在后台实现。下面开始详细介绍步骤。 1、首先要获得encryptedData,一种是通过授权函数,一种通过授权按钮 官方文档 https://developers.weixin.qq.com/miniprogram/dev/api/wx.getUserInfo.html?search-k…

前端学习(2627):node安装

1、在使用之前,先类掌握3个东西,明白它们是用来干什么的: npm: nodejs 下的包管理器。 webpack: 它主要用途是通过CommonJS 的语法把所有浏览器端需要发布的静态资源作相应的准备,比如资源的合并和打包。 vue-cli: 用户生成Vu…

jmeter集合点使用方法:Synchronizing Timer

LR中集合点可以设置多个虚拟用户等待到一个点,同时触发一个事务,以达到模拟真实环境下多个用户同时操作,实现性能测试的最终目的。 jmeter中使用Synchronizing Timer实现Lr中集合点的功能,模拟多用户并发测试,即多个线程在同一时刻并发请求。…

微信模版消息 errmsg: 'invalid weapp pagepath hint: [OtU1OA0868a394]

我是想在公众号的模版消息中,点击直接跳转到体验版小程序的页面中,使用了官方的写法: miniprogram: {// 小程序appidappid: config.wapp.appid,// 打开页面pagepath: "pages/home/ad" },直接报错了,其实需要把pagepath…

前端学习(2628):node.js中LTS和Current的区别

2016 年 10 月 18 日,Node.js v6 LTS (Boron) 发布,这也是 Node.js 启用 LTS 发布计划以来,第一次同时迎来两个 active LTS(v4 与 v6)。这系列文章将讲述 Node.js v6 LTS 带来的一系列变化,本篇主要围绕 LTS 展开。如果…

谷歌chrome模拟手机浏览网页:iPhone/Android

部分网站通过Http头中的User-Agent判断浏览器类型,如果是手机,显示手机版页面内容,如果是普通PC浏览器,显示电脑版网页内容。 因此谷歌Chrome浏览器,可以通过修改User-Agent和页面分辨率模拟手机浏览器访问网页。如iPh…

前端学习(2629):npm安装成功配置

修改目录 修改镜像 输入命令npm config set registryhttp://registry.npm.taobao.org 配置镜像站 配置成功 测试镜像行吗

前端学习(2630):git安装包下载

下载git时,先进官网看 https://git-scm.com/download/win 然后发现几kb的网速,这是要让我下一年么,找了找网上有没有其他的镜像,发现阿里有一个镜像,下载速度超快。 网址:https://npm.taobao.org/mirror…

coding ssh_exchange_identification: Connection closed by remote host

首先,强力吐槽coding.net。前段时间突然提交不上代码了。老是报错,一怒之下删除.ssh,然后重新根据官方文档配置,我是买的企业版,是付费的。 于是官方文档坑了 https://e.coding.net/help/git/ssh-key/#i-3 感觉这文档…

前端学习(2631):git安装

git 提交 全部文件 1、git add . git add xx 命令可以将xx文件添加到暂存区,如果有很多改动可以通过get add -A .来一次添加所有改变的文件。注意 -A 选项后面还有一个句点。git add -A 表示添加所有内容,git add . 表示添加新文件和编辑过的文件不包括…

宝塔 windows 2012 配置 ftp 允许 fileZilla 连接

使用fileZilla连接宝塔 windows 2012的ftp遇到了一些坑,下面记录一下步骤。 1、当安装完全新当宝塔 windows 2012后,首先配置ftp 账号: 2、在阿里云上配置安全组规则,开放端口 21 22 80 3306 39000/40000 3、在fileZilla进行配置…

jmeter语言设置

Jmeter启动时通过JVM判断界面显示语言,正常情况可以显示正确的语言,但如果显示错误或者喜欢英文环境,就需要自己通过菜单或者自己配置jmeter.properties设置语言。 jmeter.properties中配置Jmeter界面语言 \apache-jmeter-2.9\bin\jmeter.pro…

带参数的光标

转载于:https://www.cnblogs.com/myfaith-feng/p/7725813.html

如何解决360的导航一直绑定为首页(亲测有效)

1首先360导航后面的属性一定被追加了网址 你删除会显示权限不足 2打开文件目录 从新生成快捷方式u即可 难呀 亲测有效

宝塔面板 windows 2012 mysql 允许远程连接

一开始配置windows 2012 mysql连接的时候,怎么连,都连不上。后台知道需要配置一个参数就OK。 1、找到需要修改文件my.ini的目录 打开my.ini,在[mysqld]下添加skip-grant-tables, 2、关闭MySQL服务并重新开启,远程就…

jmeter测试TCP服务器/模拟发送TCP请求

jmeter测试TCP服务器,使用TCP采样器模拟发送TCP请求。 TCP采样器:打开一个到指定服务器的TCP / IP连接,然后发送指定文本并等待响应。 jmeter模拟发送TCP请求的方法: 1.新建线程组,然后在线程组中新建TCP采样器 TCP采样…

JMeter事务控制器(Transaction controller)

JMeter事务控制器(Transaction controller) 事务控制器会产生一个额外的取样器(sampler),用来计算衡量它所包含的所有测试组件(比如包含2个http采样器)的总体时间。在”查看结果树”监听器中,事…

Android 实现ListView的A-Z字母排序

demo链接:https://download.csdn.net/download/meixi_android/10803373 A-Z排列效果 两个工具类 26个字母垂直排列自定义类 /*** 作者:created by meixi* 邮箱:13164716840163.com* 日期:2018/11/23 15*/public class SideBar ex…