同期、非同期およびコールバック
1004 ワード
JavaScriptでは、JavaScriptは単一スレッドであり、単一スレッドはすべてのタスクが整列し、前のタスクが終了してから、次のタスクが実行されるということを意味します.前のミッションが長くかかると、後のミッションがずっと待たなければなりません.そこで一つの概念があります.ミッションチームです.しかし、このまま列に並んで任務を遂行するのを待っていると、次の任務を遂行しなければならないので、資源の浪費を招くので、同期任務と非同期任務があります.同期タスクは、メインスレッド上に整列して実行するタスクであり、前のタスクだけが実行されて、後のタスクが実行されます. 非同期タスクはメインスレッドに入らず、「タスクキュー」(task queue)のタスクに入ると、メインスレッドのタスクの実行が完了するのを待つだけで、「タスクキュー」はメインスレッドに通知を開始し、タスクの実行を要求します.通俗的には、結果を待たずに次のステップを進めていくということですが、どうやって結果を得ることができますか?
A:ダフ屋に切符を買ってもらいます.その後、私はそばに置いて立って待っています.B:ダフ屋に切符を買ってもらいます.(ダフ屋に切符を買ったら、コールしてください.)他のことをします. コールバックは、非同期の結果を得るための方法であり、もちろん、フィードバックも同期の結果を得ることができる .
A:ダフ屋に切符を買ってもらいます.その後、私はそばに置いて立って待っています.B:ダフ屋に切符を買ってもらいます.(ダフ屋に切符を買ったら、コールしてください.)他のことをします.
function fn1(){
setTimeout(function(){
console.log(" ")
},1000)
}
function fn2(){
console.log(" ")
}
fn1()
console.log(1)// 1, “ ”, fn1 , ,
fn2()
console.log(1)// “ ”, 1, fn2 , , ,
ここで、同期、非同期、リプライは大体分かりました.