3

Dart でいくつかの WebGL を実験しています。別のファイルからシェーダーをロードするクラスを作成しました。オブジェクトの準備ができたらイベント (関数) をスローしたいので、シェーダーが適切にロードされていることを認識してアプリケーションを続行できます。 . 誰かがこれを行う簡単な方法を知っていますか?

4

1 に答える 1

6

1つのアプローチは、Futureパターンを使用してこれを実現することです。

Future<SomeType> initMyObject(){
   final c = new Completer();

   // Do my object init stuff
   // and when it is complete:
   c.complete(instanceOfSomeType);

   // Return the Future object to any subscribers.
   return c.future;
}

その後、他の場所で次のように通知を受け取ることができます。

initMyObject().then((SomeType t){
   //executes when future completes
});
于 2012-07-22T03:12:11.343 に答える