lz206

Windbg调试IE前端页面无响应一点小经验

  Thread Time
   8:ac8 0 days 7:15:48.484
  12:a14 0 days 0:00:00.359
  10:7a0 0 days 0:00:00.359
   7:c00 0 days 0:00:00.187
  18:fec 0 days 0:00:00.125
   9:41c 0 days 0:00:00.046
   6:f40 0 days 0:00:00.046
   5:c18 0 days 0:00:00.031
   3:f60 0 days 0:00:00.015
  20:85c 0 days 0:00:00.000
  19:f2c 0 days 0:00:00.000
  17:1d0 0 days 0:00:00.000
  16:b70 0 days 0:00:00.000
  15:f04 0 days 0:00:00.000
  14:88c 0 days 0:00:00.000
  13:2d8 0 days 0:00:00.000
  11:71c 0 days 0:00:00.000
   4:fb0 0 days 0:00:00.000
   2:1dc 0 days 0:00:00.000
   1:e94 0 days 0:00:00.000
   0:f28 0 days 0:00:00.000

0:020> ~8s
eax=1305cd08 ebx=012b5ebf ecx=0206ec94 edx=0009001f esi=001aa080 edi=011090c6
eip=7c9585ec esp=0206ef2c ebp=0206ef50 iopl=0 nv up ei pl nz ac po nc
cs=001b ss=0023 ds=0023 es=0023 fs=003b gs=0000 efl=00000212
ntdll!KiFastSystemCallRet:
7c9585ec c3 ret
0:008> kb
ChildEBP RetAddr Args to Child
0206ef28 77e2c403 636804a8 21bf04f4 011090c6 ntdll!KiFastSystemCallRet
0206ef50 6362ce28 001cf718 63686698 00000000 user32!NtUserSetTimer+0xc
0206ef8c 6362cf93 001cf718 0206f2b0 00004e20 mshtml!CWindow::SetTimeout+0xd2
0206efac 6362cf57 001cf730 0206f2b0 00004e20 mshtml!CWindow::setTimeout+0x20
0206efd4 6362ccc5 001cf730 0206f2b0 00004e20 mshtml!COmWindowProxy::setTimeout+0x49
0206f040 636430c9 06fd8320 13cb8370 06fd8338 mshtml!Method_longp_VARIANTp_long_o0oVARIANTp+0x12e
0206f0b4 63643595 06fd8320 0000044f 00000001 mshtml!CBase::ContextInvokeEx+0x5d1
0206f0e0 636434e4 06fd8320 0000044f 00000001 mshtml!CBase::InvokeEx+0x25
0206f150 636435c4 06fd8320 0000044f 00000001 mshtml!COmWindowProxy::InvokeEx+0x2c7
0206f178 63642f30 06fd8320 0000044f 00000001 mshtml!COmWindowProxy::subInvokeEx+0x26
0206f1a0 63642eec 06fd8320 0000044f 00000001 mshtml!CBase::VersionedInvokeEx+0x20
0206f1f0 633a6d37 0c9906c0 0000044f 00000001 mshtml!PlainInvokeEx+0xea
0206f230 633a6c75 0b9a1008 0000044f 00000409 jscript!IDispatchExInvokeEx2+0xf8
0206f26c 633a9cfe 0b9a1008 00000409 00000001 jscript!IDispatchExInvokeEx+0x6a
0206f32c 633a9f3c 0000044f 00000001 00000000 jscript!InvokeDispatchEx+0x98
0206f360 633a77ff 0b9a1008 0206f394 00000001 jscript!VAR::InvokeByName+0x135
0206f3ac 633a85c7 0b9a1008 00000001 00000000 jscript!VAR::InvokeDispName+0x7a
0206f3dc 633a9c0b 0b9a1008 00000000 00000001 jscript!VAR::InvokeByDispID+0xce
0206f578 633a5ab0 0206f590 00000000 00000000 jscript!CScriptRuntime::Run+0x2989

0206f660 633a59f7 00000000 00000000 067225b8 jscript!ScrFncObj::CallWithFrameOnStack+0xff

 

   发现该IE进程中一直在执行 SetTimeout0206ef8c 6362cf93 001cf718 0206f2b0 00004e20 mshtml!CWindow::SetTimeout+0xd2

 

   之后在 js代码中发现 A 函数中:

  window.setInterval("B()",5000);

  然后B函数中:

 window.setTimeout("B()",20000);

 

 

这两个定时器会造成类似于很多的B()在不断执行。会造成CPU一直很高,IE无响应。

 

 


 

 

 

posted on 2011-09-19 16:43  lz206  阅读(460)  评论(0)    收藏  举报

导航