我有一种情况,我开始了一些对象,当它们准备好处理一些输入数据时,调用一个处理程序。我需要担心Flex/AIR代码中的并发问题吗?
该处理程序从暂挂请求的ArrayCollection中获取数据集,将其分配给该对象,并从ArrayCollection中删除该数据集。
(我不能从ArrayCollection的,因为我需要通过它来搜索,找到一个合适的数据集流行 - 这是不是总在最前面的那一个)
难道两个对象可以打电话给我(1)第一个被分配一个数据集,(2)第二个被分配相同的数据集,然后服务于第一个的处理程序的实例已经删除了它,我猜(3)处理程序的第二个实例尝试从ArrayCollection中删除数据集时发生错误。
我对Flash Player运行时不够熟悉,不知道这种故障情况是否可能,或者是否应该花费额外时间进行某种锁定以防止出现这种情况。
编辑:到目前为止的答案给Flex的发光评论,但我不知道他们回答这个问题。要清楚,我不想决定是否使用Flex。
如果我有一个方法:
- 获取一块从某处的数据在ArrayCollection
- 做一些事的数据
- 删除从ArrayCollection的数据
在第一次调用#1之后但是在#3之前,是否有可能再次调用同一个方法可以执行#1?你说Flex/AS“正常工作” - 你能否澄清一下,在这种情况下它会“正常工作”吗?
感谢您的澄清。 对于我的应用来说,接收呼叫的顺序并不重要,重要的是我不会将相同的数据发送给两个呼叫者。 – 2009-01-10 02:34:29