码迷,mamicode.com
首页 > 编程语言 > 详细

as3中的多线程

时间:2015-07-25 16:44:12      阅读:236      评论:0      收藏:0      [点我收藏+]

标签:

  从fp11.4开始支持worker技术, 即as3中的线程概念, 到了fp11.5, flascc中开始支持pthread家族来创建线程。

  总的来说, as3中有两种创建线程的方法:

1、直接在as3中利用worker家族接口来创建和使用线程。

2、利用flascc技术在c中使用pthread家族接口来创建和使用线程。adobe官方文档明确指出, 使用pthread创建的线程, 最终也是使用as3中的worker来实现的。

  

一、worker对象的创建和获取

1、利用worker家族接口创建的worker的获取

  有三种途径, 如下:

  1.1 创建worker的时候直接获取

var worker: Worker = WorkerDomain.current.createWorker(swfBytes);

  1.2 在要获取的地方使用Worker.current获取当前代码所在的线程。

  1.3 利用WorkerDomain.current.listWorkers()来获取当前所有的worker列表。

2、利用pthread家族接口创建的worker的获取

   因为利用pthread_create创建出现的线程实际上最终也是会生成一个worker来运行的,所以也就有了对于这个worker对象的获取。但是这时候只能使用1.2和1.3的方法来获取, 而没办法直接使用1.1可以放线程创建者来获取当前创建的worker。 因为这个原因, 或许会给使用者带来不便。

二、worker之间的通讯

 

三、关于pthread和worker的关系

  1、thread proc函数的运行和worker的载入(构造函数, added to stage事件)先后顺序关系。

  2、如果一个thread proc是一个死循环函数, 那么worker本身能否处理自身事件,比如enter frame等。

    3、关于pthread与普通worker之间的性能、内存使用的测试对比。

as3中的多线程

标签:

原文地址:http://www.cnblogs.com/zilongblog/p/4675965.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!