看流星社区

 找回密码
 注册账号
查看: 3087|回复: 2

易语言 调用函数 的问题

[复制链接]

该用户从未签到

发表于 2011-3-17 14:36:39 | 显示全部楼层 |阅读模式
魔鬼作坊的模块,连续调用函数时间小于500毫秒的话,很容易发生游戏自动关闭
自己写的调用函数,连续调用小于500毫秒的话,很容易发生辅助自己关闭
附自己的调用函数,线程首地址只申请一次
希望有人能帮解释下连续调用时间为什么一定要大于半秒呢,如果说CALL的太快游戏关闭可以理解,怎么会CALL快了辅助自己关闭。。
  1. .版本 2

  2. .子程序 调用函数
  3. .参数 ID, 整数型
  4. .参数 代码, 字节集
  5. .局部变量 线程ID, 整数型
  6. .局部变量 代码长度, 整数型
  7. .局部变量 线程句柄, 整数型

  8. 代码长度 = 取字节集长度 (代码) + 1
  9. 写入内存 (进程句柄, 线程首地址, 代码, 代码长度, 0)
  10. 线程句柄 = 远程创建线程 (进程句柄, 0, 0, 线程首地址, 0, 0, 线程ID)
  11. 等待线程结束 (线程句柄, -1)
  12. 关闭句柄 (线程句柄)
复制代码

该用户从未签到

 楼主| 发表于 2011-3-17 14:37:20 | 显示全部楼层
巧的是,我把需要连续调用函数的地方,调一下模块的紧接着调一下自己,这样连续调用就不会出错了
难道是说调用函数这个命令调用完后线程仍还在?
等待线程结束 (线程句柄, -1)
这句不是在等待线程结束吗,这句也是在线程中执行的?
应该怎样写才能做到“调用函数”单线程运行呢,就是等到它线程完了,关闭线程句柄了才去运行其它语句,这样就可以确保不会出错了,也没必要去用延时了

该用户从未签到

 楼主| 发表于 2011-3-17 14:37:38 | 显示全部楼层
辅助卡死的原因找到了,是有一处循环里没有延时成了死循环。。。失误
点击按钮快速添加回复内容: 支持 高兴 激动 给力 加油 苦寻 生气 回帖 路过 感恩
您需要登录后才可以回帖 登录 | 注册账号

本版积分规则

小黑屋|手机版|Archiver|看流星社区 |网站地图

GMT+8, 2024-4-26 22:28

Powered by Kanliuxing X3.4

© 2010-2019 kanliuxing.com

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