BaseActor
waitForメソッド
指定した動作が終わるまで待機します
書式
※必ず待機可能モードで呼び出して下さい
r=waitFor(promise);
promise
には,スレッドまたはJavaScript/jQueryのPromiseオブジェクトを指定します(例:$.get(...)
など ).
promise
が結果を返す(スレッドが正常終了する,またはpromise.done(f)
の関数f
が呼び出される)と,waitForメソッドは終了し,スレッドの戻り値またはf
に渡された第1引数の値が戻り値として返されます.
promise
が失敗する(スレッドが例外を投げるか,killメソッドで停止させられる,promise.fail(f)
の関数f
が呼び出される)と,waitForメソッドは例外を投げます.例外オブジェクトe
のe.original
に,f
に渡された第1引数が格納されます
例
native $;
try {
// $.getの結果がrに入る
r=waitFor($.get("http://tonyu.jp/"));
print(r.substring(0,100));
} catch(e) {
//エラーの場合
print(e.original.statusText);
}
try {
// okを実行し,その結果がrに入る
r=waitFor(parallel("ok"));
print("Succ",r);
} catch(e) {
//エラーの場合
print("Err",e);
}
\ok() {
updateEx(30);
return "OK";
}
.