11RIA 闪客社区 - 最赞 Animate Flash 论坛

搜索
查看: 4283|回复: 12
上一主题 下一主题

[AIR 开发] 【AS3 Worker(多线程)探秘 2】———跳过天坑

[复制链接] TA的其它主题
发表于 2018-11-5 10:53:34 | 显示全部楼层 |阅读模式

【游客模式】——注册会员,加入11RIA 闪客社区吧!一起见证Flash的再次辉煌……

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

x
本帖最后由 TKCB 于 2020-2-21 07:59 编辑

TKCB网站
网址:www.tkcb.cc


【AS3多线程探秘】——系列教程,共五篇
目录


天坑?Why?
我们继续接着上一个帖子,为什么会把这一个单独提出来,是因为AS3的多线程机制实际有坑人的地方,如果方法不对或许你怎么测试都是错误,总是感觉代码明明正常,为什么多线程就不能正常呢。

跳过天坑
就我目前遇到的,大概有下面几个坑(这都是Adobe没有告诉我们的):
•  天字一号坑:发布SWF的模式
•  天字二号坑:state属性
•  天字三号坑:子线程里的 trace()

天字一号坑:发布SWF的模式
说到发布模式,还要感谢 “iloveas” 舵主,因为这个是我不知道的,这个得感谢感谢他。
首先,肯定要用11.4及以上的Flash Player。
然后,子的线程的fla文档必须使用正常的发布swf,不能使用调试模式发布。
最后,主的线程的fla文档必须使用调试模式发布swf。
或许只有Adobe写这个代码的人才知道为什么要这样。

天字二号坑:state属性
子线程在刚启动之后,即使使用侦听器侦听Worker的状态,即使 state 为 WorkerState.RUNNING,也不一定两个线程真正的连接正常了。
我就在这个上面坑了,代码写的很标准,就TM得连接不上,这个也是靠 “iloveas” 舵主帮助我,因为他之前的游戏中使用了多线程技术。
必须延后一定时间,两个线程才是正常的。
我使用的方法是一个不停发送消息的方法机制,不断的检测两个线程之间是否连接正常,如果连接正常,子线程发送连接正常的消息,然后主线程停止检测。
这时候才可以运行后面的代码。

天字三号坑:子线程里的 trace()
子线程由于单独使用了AVM2虚拟机,所以子的trace()就看不到了,这个是Adobe有点懒,没弄好,按理说是可以对trace进行一些改良吧!!!
或许真的很麻烦,所以Adobe也就没有管这个问题,但这个也不是特别重要的问题。
大家可以把子线程的代码现在子线程里面测试一遍,正常之后在把两个线程进行组合使用。


源码送上:
下面放出第一个fla的源文件,主要是多线程的初步使用和天坑的注解:
(国际惯例,为了更多人看到而隐藏)
游客,如果您要查看本帖隐藏内容请回复
QQ截图20181105112230.png


听我说一些废话吧

多线程很不错,真好,虽然Adobe的多线程有一些地方会坑人,但至少实现了不是吗。


免费是最昂贵的
银子还是要收的,因为 “免费的东西最昂贵” ,请深刻理解这句话的含义!!!


广告
QQ(TKCB):2414268040(欢迎和我聊天交流,有朋自远方来不亦说乎)
QQ群:96759336(AS3殿堂之路,Flash Animate AS3 AIR 技术交流)
QQ群:705730359(H5天路历程,HTML5 CSS3 JaveScript  技术交流)
QQ群:463560360(King系列软件分享交流,TKCB 出品的 King 系列软件分享、使用、交流、反馈等)
TKCB网站:www.tkcb.cc
官方技术论坛:www.11ria.com

本帖被以下淘专辑推荐:

发表于 2018-11-5 11:08:02 | 显示全部楼层
顶顶顶顶顶顶顶顶顶
回复

使用道具 举报

发表于 2018-12-26 04:15:12 | 显示全部楼层
主的线程的fla文档必须使用调试模式发布swf —— 这个问题到今天依然存在吗?
回复

使用道具 举报

发表于 2018-12-31 23:45:09 | 显示全部楼层
子线程由于单独使用了AVM2虚拟机
回复

使用道具 举报

发表于 2019-1-7 15:21:38 | 显示全部楼层
学习啦
回复

使用道具 举报

发表于 2019-3-21 12:53:20 | 显示全部楼层
顶顶顶,写的相当不错,很有用的东西
回复

使用道具 举报

发表于 2020-7-15 12:05:29 | 显示全部楼层
感谢分享
回复

使用道具 举报

发表于 2020-8-10 14:40:56 | 显示全部楼层
感谢分享!
回复

使用道具 举报

发表于 2021-6-13 13:40:44 | 显示全部楼层
很认真的主啊
回复

使用道具 举报

 楼主| 发表于 2021-6-13 14:52:42 | 显示全部楼层

是的,一直很认真!
回复

使用道具 举报

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

本版积分规则

关闭

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

感谢所有支持论坛的朋友:下面展示最新的5位赞助和充值的朋友……更多赞助和充值朋友的信息,请查看:永远的感谢名单

SGlW(66139)、 anghuo(841)、 whdsyes(255)、 longxia(60904)、 囫囵吞澡(58054)

下面展示总排行榜的前3名(T1-T3)和今年排行榜的前3名的朋友(C1-C3)……更多信息,请查看:总排行榜今年排行榜

T1. fhqu1462(969)、 T2. lwlpluto(14232)、 T3. 1367926921(962)  |  C1. anghuo(147)、 C2. fdisker(27945)、 C3. 囫囵吞澡(58054)



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