易语言 读内存占用CPU怎么这么高 只是循环读取怪物死亡状态就达到90%以上CPU 软件还不到1MB大小 晕啊

并不是死循环怪物死亡时候有个值从0变成1怪物尸体消失又会变0死亡状态=1这个值只停留1秒就没了易语言运行的太慢延时就会读取不到死亡状态不延时CPU几乎全部占据了... 并不是死循环 怪物死亡时候有个值从0变成1 怪物尸体消失又会变0 死亡状态=1 这个值只停留1秒就没了 易语言运行的太慢 延时就会读取不到死亡状态 不延时CPU几乎全部占据了 展开
 我来答
dgfeifan
2012-05-04 · 超过38用户采纳过TA的回答
知道小有建树答主
回答量:76
采纳率:0%
帮助的人:41.6万
展开全部
楼上说的在线程里运行时钟?可能我刚刚才自学编程,不知道怎么在线程里运行时钟...
我发现用循环不是不可以,我做辅助之前也头疼这事,后来解决了,估计你的情况跟我一样(甚至怀疑是同一款游戏..........),看例子:
先启动一个线程,子程序指针就是 &怪物

.版本 2

.子程序 怪物
.局部变量 现行选择怪物数, 整数型
.局部变量 当前有效怪物数, 整数型

.判断循环首 (挂机按钮.标题 = “停止挂机” 且 选择框8.选中)
怪物1.基址 = 读内存整数型 (窗口进程, 读内存整数型 (窗口进程, 读内存整数型 (窗口进程, 十六到十 (#游戏基址文本)) + 十六到十 (“#环境偏移”)) + 4))
怪物1.HP = 读内存整数型 (窗口进程, 怪物1.基址 + 十六到十 (“1c”))
怪物2.基址 = 读内存整数型 (窗口进程, 怪物1.基址 + 4 )
怪物2.HP = 读内存整数型 (窗口进程, 怪物2.基址 + 十六到十 (“1c”))
怪物3.基址 = 读内存整数型 (窗口进程, 怪物2.基址 + 4 )
怪物3.HP = 读内存整数型 (窗口进程, 怪物3.基址 + 十六到十 (“1c”))
''''''''''''''''''''''''后面的如此类推
当前有效怪物数 = 0
现行选择怪物数 = 组合框6.取项目数值 (组合框6.现行选中项)
.如果真 (怪物1.HP > 0)
当前有效怪物数 = 1
.如果真结束
.如果真 (怪物2.HP > 0)
当前有效怪物数 = 当前有效怪物数 + 1
.如果真结束
.如果真 (怪物3.HP > 0)
当前有效怪物数 = 当前有效怪物数 + 1
.如果真结束
''''''''''''''''''''''''''''''''后面的如此类推
.如果 (选择框8.选中 且 当前有效怪物数 < 现行选择怪物数)
选择框8.文本颜色 = 255
.否则
选择框8.文本颜色 = 0
.如果结束
延时 (200)'''''''''''''''''关键在这里要有延时,哪怕10ms也好
.判断循环尾 ()
aishuren0722
2012-03-11 · TA获得超过251个赞
知道小有建树答主
回答量:466
采纳率:0%
帮助的人:409万
展开全部
别用循环,最好用时钟,另开一个线程,时钟周期设置的短一些就好了,比循环占用的可少多了。
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式