TC官方合作论坛

 找回密码
 立即注册
查看: 259|回复: 9
打印 上一主题 下一主题

[问题] 为啥代码这么写,运行几个小时会让电脑卡死机?

[复制链接]
跳转到指定楼层
楼主
发表于 2016-3-8 22:11:32 | 只看该作者 回帖奖励 |正序浏览 |阅读模式

马上加入TC

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
while(true)

        for(40)
                dm.LeftClick()
       endfor

        dm.FindPic(0,0,616,1010,"xxxx.bmp","203040",0.9,0,x,y)
        if(x>0)
            ......
         endif

endwhile


这样写代码有啥不对吗?

回复

使用道具 举报

10#
发表于 2016-3-9 04:25:08 | 只看该作者
循环(执行条件限制)
  如果(结束的条件)
     跳出
  结束
等待(10) //加些中断降低CPU占用率
结束

//循环或遍历 所消费CPU跟套几层没有关系
回复 支持 反对

使用道具 举报

9#
 楼主| 发表于 2016-3-8 23:36:50 | 只看该作者
1102509486 发表于 2016-3-8 23:07
一般来说 你用了for 也不会电脑死机  可能是你电脑配置太低   当然也可以加我qq帮你看看  ...

万分感谢,祝你开心每一天。机器肯定没问题E3 16G GTX7502G显卡
回复 支持 反对

使用道具 举报

8#
 楼主| 发表于 2016-3-8 23:36:47 | 只看该作者
1102509486 发表于 2016-3-8 23:07
一般来说 你用了for 也不会电脑死机  可能是你电脑配置太低   当然也可以加我qq帮你看看  ...

万分感谢,祝你开心每一天。机器肯定没问题E3 16G GTX7502G显卡
回复 支持 反对

使用道具 举报

7#
发表于 2016-3-8 23:07:59 | 只看该作者
tatdgfss 发表于 2016-3-8 23:03
我意思是在while语句里面再嵌套一个for语句,是不是导致电脑死机的原因,如果我不用这个for语句,是不是 ...

一般来说 你用了for 也不会电脑死机  可能是你电脑配置太低   当然也可以加我qq帮你看看
回复 支持 反对

使用道具 举报

6#
 楼主| 发表于 2016-3-8 23:03:55 | 只看该作者
1102509486 发表于 2016-3-8 23:02
加延迟就是优化 不加延迟 那就不叫优化  不加延迟死循环 cpu会非常高

我意思是在while语句里面再嵌套一个for语句,是不是导致电脑死机的原因,如果我不用这个for语句,是不是会好点?
回复 支持 反对

使用道具 举报

5#
发表于 2016-3-8 23:02:17 | 只看该作者
tatdgfss 发表于 2016-3-8 22:53
不加延迟的情况下 怎么样优化

加延迟就是优化 不加延迟 那就不叫优化  不加延迟死循环 cpu会非常高
回复 支持 反对

使用道具 举报

地板
 楼主| 发表于 2016-3-8 22:53:50 | 只看该作者
1102509486 发表于 2016-3-8 22:47
加点  延迟 就不会了  你这样写操作的太快了

不加延迟的情况下 怎么样优化
回复 支持 反对

使用道具 举报

板凳
发表于 2016-3-8 22:47:18 | 只看该作者
加点  延迟 就不会了  你这样写操作的太快了
回复 支持 反对

使用道具 举报

沙发
 楼主| 发表于 2016-3-8 22:12:15 | 只看该作者

while(true)
   dm.LeftClick()
   dm.LeftClick()

   dm.LeftClick()
   dm.LeftClick()
   dm.LeftClick()
   dm.LeftClick()
   dm.LeftClick()
   dm.LeftClick()
   dm.LeftClick()
   dm.LeftClick()
   dm.LeftClick()
   dm.LeftClick()
   dm.LeftClick()
   dm.LeftClick()
   dm.LeftClick()
   dm.LeftClick()
   dm.LeftClick()
   dm.LeftClick()
   dm.LeftClick()
   dm.LeftClick()
   dm.LeftClick()
   dm.LeftClick()
   dm.LeftClick()
   dm.LeftClick()
   dm.LeftClick()
   dm.LeftClick()



        dm.FindPic(0,0,616,1010,"xxxx.bmp","203040",0.9,0,x,y)
        if(x>0)
            ......
         endif

endwhile
这样写 是不是会好点?
回复 支持 反对

使用道具 举报

*滑动验证:
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关闭

站长推荐上一条 /2 下一条

关闭

小黑屋|TC官方合作论坛 (苏ICP备18043773号

GMT+8, 2025-9-21 02:24 , Processed in 0.153141 second(s), 24 queries .

Powered by 海安天坑软件科技有限公司

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表