自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

juqiang的专栏

Debug, Performance Tuning

  • 博客(13)
  • 收藏
  • 关注

原创 Unable to load image C:/WINDOWS/Microsoft.NET/Framework/v2.0.50727/mscorwks.dll, Win32 error 0n2

抓到一个mini dump,执行!clrstack,会提示如下错误:*** WARNING: Unable to verify timestamp for mscorwks.dllFailed to load data access DLL, 0x80004005Verify that 1) you have a recent build of the debugger (6.2.14 or

2008-03-13 12:32:00 3275

原创 多年前的《曹操传》存档修改器

sourcecode丢失了,。只剩下了exe和dll文件。原来使用bcb3写的,其实这种静态的存档修改器,主要就是对于文件格式的分析了。及时的存盘和fc/b,基本上就能把一个结构分析的差不多。写过好几个游戏的,这个特殊一点,因为头像及所有的图形信息,都在resource dll中,所以直接读取就可以了。.net下如何读取老的resource dll,我没试验过。如果没有简单的class,按么dll

2008-03-12 16:50:00 5104 1

原创 XmlSerializer带来的性能问题及解决办法

(本文中的思路、二元hashtable等,大力感谢Leo Chen的帮助!)对于XmlSerializer带来的内存占用过高,最终导致Out Of Memory的问题,参见以前这个链接:http://www.cnblogs.com/juqiang/archive/2008/01/15/1039936.html(但是那篇文章中对于XmlSerializer构造方法的说明,是错误的。那段代码没有问题,

2008-03-12 16:45:00 1931

原创 网站High CPU分析

 网站升级后,说有High CPU的问题。mstsc上去后,看了一下,果然如此,w3wp.exe的cpu几乎一直是满的,我的远程桌面操作也很慢。下载下来windbg,装好,抓了两个dump。首先!runaway一下,0:022> !runaway User Mode Time  Thread       Time  22:8cc       0 days 0:17:15.238  23:4d8

2008-03-12 16:44:00 1243 1

原创 System.Data.SQLClient.SqlConnection在Open之后为什么需要及时Close?

如果System.Data.SQLClient.SqlConnection(下面简称dbconn)不及时Close,那么造成的后果可以在这里看到:http://www.cnblogs.com/juqiang/archive/2005/12/10/294269.html具体的原因,我们来看代码(用reflector反编译.net framework 2.0的dll)dbconn有一个方法叫做:Ope

2008-03-12 16:43:00 1583

原创 Basic Windbg - 2 CLR基础

调整一下写的思路,第一部分的sos basics继续有效,原定的crash/hang/memory等,序号顺延,中间插入这个clr basics创建一个控制台程序,代码如下:Codeusing System;using System.Collections.Generic;using System.Text;namespace HelloWindbg{    class Program    

2008-03-12 16:41:00 784

原创 Basic Windbg - 1. SOSBasics(总结)

我们都知道,对于字符串相加,建议使用StringBuilder,而不是普通的string concat,为什么呢?我们通过dump简单看一下。先看这个代码:CodeCode highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/--> 1using System; 2u

2008-03-12 16:39:00 513

原创 Basic Windbg - 1. SOSBasics(再续)

我们的查看对象之旅,还远没有结束。继续按照前前一篇的代码来扒皮。上节讲的是通过!dso,找到所有stack上的东西,下面我们看heap上的东西。首先,整体上先来了解一下。我们这里会用一个新命令,叫做!eeheap(叹号+eeheap)。它有两个参数,一个叫-gc,一个叫-loader。后者,葡萄在他的书里面写过一个case,因为load的东西太多,造成了内存巨量的碎片,导致OOM出现。对于前者,会

2008-03-12 16:37:00 478

原创 Basic Windbg - 1. SOSBasics(续)

书接上回,我们开始看另外几个命令。大家如果注意看我的代码,能发现里面既有value type,也有reference type。那么,我怎么查看,当前线程状态下,我的那些变量的信息呢?对于托管代码而言,最核心的命令就是!do(dump object的缩写),这个!do后面是要加上你要看的变量的地址的。那么,我怎么知道我的变量的地址呢?先来看另外一个命令,!dso(Dump Stack Object

2008-03-12 16:34:00 657

原创 Basic Windbg - 1. SOSBasics

看代码先。这是一个控制台程序,通过这个程序,我们来初步接触一下windbg如何使用。(代码你可以自己创建一个console application,然后把我下面代码全部覆盖上去即可,用vs2002/03/05/08皆可)请耐着性子,下拉滚动条,看下面的介绍。CodeCode highlighting produced by Actipro CodeHighlighter (freeware)h

2008-03-12 16:32:00 1104 1

原创 Basic Windbg - Introduction

windbg的下载    打开google:http://www.google.cn,然后搜索这个关键字:debugging tools for windows,search的结果的第一行,就是windbg的下载路径。如果你懒的搜,那么直接访问这个地址也可以:http://www.microsoft.com/whdc/devtools/debugging/installx86.mspx,根据你

2008-03-12 16:29:00 512

原创 Basic Windbg - 导读

导读:   为什么我们需要debug?原因大概有几个,几乎都是在生产环境下,我们解决不了的:   1、系统就是慢。稍微懂点的客户,拿taskmgr一看,说你的aspnet_wp.exe或者w3wp.exe占用cpu太高,或者内存太高,dba到sql里面一看,说cpu太高。sql的我以前写过,这里不讲,对于前者.net的程序,你怎么处理?   2、cpu很低,内存很平稳,系统就是慢,你怎么处理?  

2008-03-12 16:17:00 470

原创 我的博客

博客堂的:http://blog.joycode.com/juqiang博客园的:http://www.cnblogs.com/juqiangmsn space的:http://qiangju.spaces.live.com以及http://juqiang.spaces.live.com   

2007-12-10 17:26:00 415

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除