同期、非同期およびコールバック

1004 ワード

JavaScriptでは、JavaScriptは単一スレッドであり、単一スレッドはすべてのタスクが整列し、前のタスクが終了してから、次のタスクが実行されるということを意味します.前のミッションが長くかかると、後のミッションがずっと待たなければなりません.そこで一つの概念があります.ミッションチームです.しかし、このまま列に並んで任務を遂行するのを待っていると、次の任務を遂行しなければならないので、資源の浪費を招くので、同期任務と非同期任務があります.
  • 同期タスクは、メインスレッド上に整列して実行するタスクであり、前のタスクだけが実行されて、後のタスクが実行されます.
  • 非同期タスクはメインスレッドに入らず、「タスクキュー」(task queue)のタスクに入ると、メインスレッドのタスクの実行が完了するのを待つだけで、「タスクキュー」はメインスレッドに通知を開始し、タスクの実行を要求します.通俗的には、結果を待たずに次のステップを進めていくということですが、どうやって結果を得ることができますか?
    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     ,       ,    ,        
    
    ここで、同期、非同期、リプライは大体分かりました.