asynchronous異步開始


備註

異步是一種編程模式,它提供非阻塞代碼的特徵,即不停止或不依賴於另一個函數/進程來執行特定的代碼行。

異步在性能,資源利用率和系統吞吐量方面非常出色。但是有一些缺點:

  • 傳統程序員很難繼續使用Async。
  • 處理控制流程真的很痛苦。
  • 回調很髒。

如果你是一個面向函數的程序員,那麼掌握異步編程就不那麼困難了。但是,如果您熟悉Java中的multithreading ,那麼這與此類似。

節點js中的文件讀取

      var fs = require("fs");
      fs.readFileSync(‘abc.txt’,function(err,data){ //Reading File Synchronously
      if(!err) {
      console.log(data);
      }
      //else
      //console.log(err);  
      });
      console.log("something else");
 

這裡,程序在讀取文件時正在等待。在完成讀操作之前不會更進一步,這是阻塞代碼的一個例子。但理想情況下,我們應該在程序讀取文件時繼續進行,一旦完成,我們應該返回並處理它。這就是以下代碼中發生的事情。

    var fs = require("fs");
    fs.readFile(‘abc.txt’,function(err,data){//Reading file Asynchronously
    if(!err) {
    console.log(data);
    }
    });
    console.log("something else");
 

這裡,程序沒有等待,因此您先看到控制台,然後再查看文件內容。

安裝或設置

有關獲取異步設置或安裝的詳細說明。