TC官方合作论坛

 找回密码
 立即注册
查看: 2889|回复: 2

建议界面主线程改成使用循环定时器延时不假死

[复制链接]
发表于 2012-4-20 13:17:15 | 显示全部楼层 |阅读模式

马上加入TC

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

x
强烈建议点击开始(界面主线程)里改成使用循环定时器延时不假死
因为界面主线程一用到和时间有关系都会假死,就连用“辅助等待"只要设置时间够长都会
假死,更不用说循环和定时器了,好像就为一个开启线程专用的
局限性太大了。可能很多人看到这里会说很好用没有问题。我承认代码比较简单
线程关系链比较简单是都没有问题。
但是功能越完善的脚本线程关系链就越复杂,就举个最简单例子吧
我要开启10个线程,10个线程里面都有关联,相互影响。
线程1-3一次只能启动1个线程用临界区让他们挂起排队启动(启动时间比较短可能几分钟)
因为线程4-6要运行比较长的时间,只要线程1-3其中一个线程运行完马上启动线程4-6其中一个线程
马上又启动线程1-3中一个,启动完后又启动线程4-6其中一个线程就这样循环启动
等临界区线程1-3都运行完,判断线程4-6线程运行情况,来控制循环开启线程7-10。
因为每个线程里都判断另一个线程的或者所有线程的”开关“
其实说白这个”开关“就是一个时间变量可以用真假循环定时器辅助等待就可以完成
本来在界面主线程用线程无限等待或者(真假循环定时器辅助等待)其中然后一个无限等待的时间变量
就可以很好解决以上复杂的线程关系链。可是因为界面主线程不支持无限登录
硬是把他们踢出界面主线程来理清他们关系链。这样就很大程度上程加大序复杂性,就有点
像本来用一句后可以解决事情硬是要写一篇文章才能解决啊。简单程序复杂化啊。
其实还有另一个方法解决,虽然相对简单很多,可是局限性一样很大
那就线程里开线程,甚至3级线程。
问题是都要”什么创建线程对象“
”大漠要绑定线程对象“才能操作啊
就拿大漠来说都不清楚怎么绑定线程对象啊
就如大漠绑定游戏窗口,开启线程打怪
然后在开启绑定游戏窗口(绑定游戏窗口里已经开个开启线程打怪)线程
这样就会出现因为没有绑定线程对象,开启的打怪线程和绑定游戏窗口没有任何关系
回复

使用道具 举报

 楼主| 发表于 2012-4-20 13:18:18 | 显示全部楼层
自己顶
回复 支持 反对

使用道具 举报

发表于 2013-3-24 10:49:36 | 显示全部楼层
我也遇到这个问题......只要线程一多,定时器都不计时了,悲催,调试了一天,还解决不了,用最原始的办法,循环定时算了..
回复 支持 反对

使用道具 举报

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

本版积分规则

关闭

推荐上一条 /2 下一条

关闭

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

GMT+8, 2024-9-29 07:54 , Processed in 0.036440 second(s), 22 queries .

Powered by 海安简单软件服务部

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

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