« myloの怪談話 | トップページ | 情報は1冊のノートにまとめなさい »

2008年4月 1日 (火)

いつでもどこでもlet's programming!:mylo

先日コメント欄に書き込みを頂いたアクアニアさんが,JavaScript Testerをリリースされたのでリンクしておきます.

mylo widgetを公開される方が増えて嬉しい限りです(^^)

あと,call back関数に関して疑問を持たれたようなので,少し一般的な話をば.

call back関数とは,関数を呼び出す際に(Cの場合は)関数のポインタを渡しておくことにより,その関数から呼び出してもらう関数のことです.例えば処理が一通り終わったり,何らかのイベント(エラーとかタイマー割り込みとかユーザ操作発生とかetc)が発生したときに,ポインタとして渡された関数が呼ばれるような仕組みを作って使います.

この仕組みは『仕事が終わったら○○へ電話して』とか,『何か問題が発生したら△△へ電話して』のような感じで電話をcall backしてもらうようなイメージに近いので,『call back関数』と呼ばれます.

myloの関数にあるcall back関数ですが,ざっと見た感じでは,大抵は少々時間がかかる関数の引数として用意されており,『この作業が終わったら○○関数を呼んでね』ということに使われています.何故こうしているかと言うと,このような仕組みにしておかないと,その関数の実行完了までフリーズに近い状態になってしまい,何かと不都合があるためです(call back関数を引数で渡せる関数は,呼び出された後すぐに呼び出し側に制御を戻しますが,実は制御を戻した後もバックグラウンドで動いています).

その他,『一定時間毎に この関数を呼んでね』のような部分にも使われていますね.

|

« myloの怪談話 | トップページ | 情報は1冊のノートにまとめなさい »

コメント

恐縮です。わかりやすい説明ありがとうございます・・・!
コールバック関数は一種の割り込みなんですね。使われている理由もmyloなら十分通用していますね・・・(スペック的に)

それと紹介ありがとうございました。
また参考にさせていただきます。

投稿: アクアニア | 2008年4月 2日 (水) 20時46分

コメントを書く



(ウェブ上には掲載しません)


コメントは記事投稿者が公開するまで表示されません。



トラックバック

この記事のトラックバックURL:
http://app.cocolog-nifty.com/t/trackback/198640/40727048

この記事へのトラックバック一覧です: いつでもどこでもlet's programming!:mylo:

« myloの怪談話 | トップページ | 情報は1冊のノートにまとめなさい »