2012-03-25 5 views

Antwort

0

AFAIK, in ActionScript ist ein Codeblock immer single threaded. h. es blockiert immer die Ausführung von anderen bis zum Ende. Wenn ich mich nicht irre, führt die Flash-Laufzeit nur dann Code in einem separaten Thread aus, wenn sie Netzwerkanrufe tätigt.

Im AS-Ereignismodell überlappen sich die Ereignisse nicht; d.h. es gibt keine Möglichkeit, dass zwei Ereignis-Listener gleichzeitig aufgerufen werden. Sie werden immer nacheinander ausgeführt werden; und dies gilt auch für Ereignisse, die aus Netzwerkaufrufen resultieren.

Sie würden es schwer haben, die Reihenfolge der Ereignisse in den Fällen abzuschätzen, in denen Sie jedoch viele separate Ereignisse haben. weil der Großteil des Ereignismodells eng in die Anzeigeliste integriert ist. In solchen Fällen wäre es am besten, zuerst eine Art Warteschlangensystem zu entwickeln.

1

Sie müssen sich keine Sorgen machen. ActionScript-Ausführung ist single-threaded.

0

Flash/Air arbeitet an einem einzelnen Thread, außer dem Code, der im Hintergrund ausgeführt wird. Sie haben keinen Zugriff auf zwei. Wenn Sie Ihrem Ereignis eine Priorität zuweisen möchten, können Sie dies in der Funktion addEventListener von EventDispatcher tun.

Verwandte Themen