何らかの理由で、(AS3 で) から共有プロパティを取得しようとするとWorker
、結果は常に null になります。つまり、 using に値を送信し、Worker
usingsetSharedProperty()
で値を取得すると、常に/getSharedProperty()
が返されます。undefined
null
ここに私が設定した簡単なテストがあります:
package
{
import flash.display.Sprite;
import flash.system.Worker;
import flash.system.WorkerDomain;
public class Main extends Sprite
{
private var _worker:Worker;
public function Main():void
{
if (Worker.current.isPrimordial)
{
initMain();
}
else
{
initWorker();
}
}
private function initMain():void
{
_worker = WorkerDomain.current.createWorker(this.loaderInfo.bytes);
_worker.setSharedProperty("message", "test");
_worker.start();
}
private function initWorker():void
{
_worker = Worker.current;
var message:String = _worker.getSharedProperty("message");
trace(message);
}
}
}
をトレースするmessage
と、結果は null です。私の主な目標は AIR アプリを作成することですが、AIR (3.7) または Flash Player (11.6、何らかの理由で 11.7 は flash.system.Worker を有効なクラスとして認識しません) のどちらでコンパイルしても同じ結果が得られます。 .
FlashDevelop を通じて、Flex SDK を使用してコンパイルしています。誰かが何が間違っているのか知っていますか?私のコードに何かが欠けているのかもしれません?