【发布时间】:2016-01-15 12:42:07
【问题描述】:
我在这里有点茫然。我有一个问题,我认为可能是由于鼠标事件优先。我有一个函数f 在鼠标点击时被调用-f 做了一些工作,然后调用另一个函数g。 f 是否有可能运行,然后发生另一次点击 - 再次调用 f - 然后 g 被执行?
如果我的措辞难以理解,我会尝试说明我认为可能发生的情况:
click1 ----- /-----------\
\ / \
f -- f-- g g
/ \ /
click2 ------------ / \--------
|---------------- timeline----------------------|
我可以肯定地说,只有在非常快速地连续单击两次(而且并非总是如此)时才会出现问题(大约 50 次慢速双击和大约 50 次快速双击)。我意识到我的数字可能比它澄清的更令人困惑,但我不确定如何传达我的想法。非常感谢任何输入!
【问题讨论】:
-
我认为您根本没有描述这个问题。无论如何,事件上没有发生竞争条件,所有代码都在执行期间。
-
我故意没有描述这个问题,因为如果这不是原因,那么它可能在一个相当大的代码库中的任何地方(无法在一个问题中总结发生的所有事情)。所以你确定鼠标点击事件不会中断正在运行的代码?您有任何参考资料来支持您的主张吗? P.S.:很抱歉,如果我遇到困难,我只是想确定一下,以便我可以继续研究其他可能性。
-
您是否记录了对
f和g的调用以查看订单是否符合您的预期?
标签: actionscript-3 apache-flex mouseevent flex3 air2