TC官方合作论坛

 找回密码
 立即注册
楼主: perock

[讨论] 讨论一下TC多线程使用大漠或天使插件问题[已反馈问题结果]

[复制链接]
 楼主| 发表于 2013-12-6 00:27:41 | 显示全部楼层
cylhb 发表于 2013-12-6 00:21
不要认为机会不大就代表没机会。
多线程同一对象键鼠操作可以先用临界区或者创建事件试试。

是,我下一步要做的就是,将所有键鼠操作全部封成新方法,在方法中作临界同步,确保同一时间只有一个线程在操作键鼠,这也是唯一能测试的方法了。
回复 支持 反对

使用道具 举报

发表于 2013-12-6 00:43:44 | 显示全部楼层
估计跟你具体的游戏相关。你一个线程一个插件对象。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2013-12-6 00:48:03 | 显示全部楼层
dongyijun1979 发表于 2013-12-6 00:43
估计跟你具体的游戏相关。你一个线程一个插件对象。

大漠插件,最多只充许二个线程中Bind同一个窗口,不过我之前也做过这样的测试,在线程内实例化dm,让每个线程使用单独的dm,但问题似乎依然存在。
回复 支持 反对

使用道具 举报

发表于 2013-12-6 00:52:13 | 显示全部楼层
记得我老师说过:
有时候需要:(1)主线程子线程均创建插件对象
            (2)主线程创建,子线程不用创建,就用主线程创建的插件对象
            (3)我忘了
全因游戏而定。
回复 支持 反对

使用道具 举报

发表于 2013-12-6 00:55:34 | 显示全部楼层
我所说的主线程,子线程是相对而言的。你别误解了。
B线程里创建了C线程。我这里将B线程叫主线程,C线程叫子线程。尽管B可能是由A线程创建的。
回复 支持 反对

使用道具 举报

发表于 2013-12-6 01:20:34 | 显示全部楼层
不过我之前也做过这样的测试,在线程内实例化dm,让每个线程使用单独的dm,但问题似乎依然存在
你测试的时候,确实是用的三个线程里各一个插件对象吗?你不是说:
大漠插件,最多只充许二个线程中Bind同一个窗口






---------------------------------------------------------------------------------------------------------------------------------------


我老师的轩辕传奇辅助,46000+的代码,用了两个子线程。我的意思:你的线程1,线程2能不能合成为一个(检测线程),线程3其实就是 任务线程。



---------------------------------------------------------------------------------------------------------------------------------------

想起来了。 第三种情况是:主线程不用插件对象,子线程里各一个插件对象
建议你把三种方式都试一下。


---------------------------------------------------------------------------------------------------------------------------------------
没写过大家伙,缺乏实战经验。我能想到的就这么多了~






回复 支持 反对

使用道具 举报

发表于 2013-12-6 10:20:46 | 显示全部楼层
perock 发表于 2013-12-6 00:25
线程3的while中有print,如果是此处死循环,那么while断点应有断下来,并且调试器应也能输出调试信息。但 ...

并且三个线程中使用一个大漠实例对象













本帖子中包含更多资源

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

x
回复 支持 反对

使用道具 举报

发表于 2013-12-6 14:25:21 | 显示全部楼层
写成一个线程吧
怎么简单的功能还要3个线程啊
改成一线程会简单很多
回复 支持 反对

使用道具 举报

发表于 2013-12-6 16:50:27 | 显示全部楼层
{:soso_e128:}多线程序最容易出现这个情况了,当需要键鼠操作时,只保证有一个线程工作就OK了。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2013-12-6 16:50:36 | 显示全部楼层
bocai7821 发表于 2013-12-6 14:25
写成一个线程吧
怎么简单的功能还要3个线程啊
改成一线程会简单很多

写成一个线程有以下问题:

在打怪或捡物品的时候,如果有人pk你,而此时代码尚未执行到查血处,那么在几秒中内就可能被人pk掉。

打怪与捡物过程有一系列判断与键鼠操作,另外还会有sleep,如果用一个线程,恐怕时刻要执行查血,如此,效率会很低。
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关闭

推荐上一条 /2 下一条

关闭

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

GMT+8, 2024-9-23 11:45 , Processed in 0.043655 second(s), 19 queries .

Powered by 海安简单软件服务部

© 2008-2019 版权所有 保留所有权利

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