tanyinhua 发表于 2014-12-15 22:19:35

我这段代码运行几个小时就死掉了,不运转的,不知道什么原因。

求解啊,很短很简单的一段代码,无限循环,就是大漠插件找图,找到就截图保存,无限循环,开几个小时就会没反应了,不知道为什么,实在看不出来问题在哪,求大神帮忙。。。


HotKeySet("{F10}", "kaishi")
Global $ztx, $zty, $ckx1, $cky1, $ckx2, $cky2
While 1
        Sleep(100)
WEnd
Func kaishi()
        TrayTip("", "开始", 3)
        Sleep(3000)
        TrayTip("", "", 0)
        Local $size = WinGetPos("九阴真经")
        $ckx1 = $size
        $cky1 = $size
        $ckx2 = $size + $size
        $cky2 = $size + $size
        While 1
                $jh1 = $dm.FindPicE($ckx1 + 180, $cky1 + 70, $ckx1 + 610, $cky1 + 425, $dqml & "\1.bmp", "303030", 1, 1)
                $jh1 = StringSplit($jh1, "|", 2)
                $jh2 = $dm.FindPicE($ckx1 + 180, $cky1 + 70, $ckx1 + 610, $cky1 + 425, $dqml & "\2.bmp", "303030", 1, 1)
                $jh2 = StringSplit($jh2, "|", 2)
                If $jh1 > 0 Or $jh2 > 0 Then
                        $shijian = @MON & "月" & @MDAY & " " & @HOUR & "时" & @MIN & "分" & @SEC
                        _ScreenCapture_Capture($dqml & "\记录\" & $shijian & ".bmp", $ckx1, $cky1, $ckx2, $cky2)
                TrayTip("", "截图成功。。", 0)
                        Sleep(6000)
                TrayTip("", "", 0)
                EndIf
                Sleep(1000)
        WEnd
EndFunc

tubaba 发表于 2014-12-16 09:08:46

本帖最后由 tubaba 于 2014-12-16 09:09 编辑

应该是内存回收机制出现问题,上面那些代码体现不了问题所在,检查调用插件后内存是否正确释放

tanyinhua 发表于 2014-12-17 11:03:21

回复 2# tubaba


    好象是内存的问题,我加了个10分钟清空一次内存,测试了半天还运行正常。。
页: [1]
查看完整版本: 我这段代码运行几个小时就死掉了,不运转的,不知道什么原因。