国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

Node.js 回調函數 阻塞與非阻塞

big_cat / 3607人閱讀

摘要:回調函數在完成任務后就會被調用,使用了大量的回調函數,所有的都支持回調函數。因此,阻塞是按順序執行的,而非阻塞是不需要按順序的,所以如果需要處理回調函數的參數,我們就需要寫在回調函數內。

Node.js異步變成的直接體現就是回調。
異步編程依托于回調來實現,但不能說使用了回調后程序就異步化了。
回調函數在完成任務后就會被調用,Node使用了大量的回調函數,Node所有的APi都支持回調函數。
比如,我們i 遍讀文件,一邊執行其他命令,在文件讀取完成后,我們將文件內容作為回調函數都參數返回。
這樣在執行代碼時就沒有阻塞或等待文件I/O操作。這就大大提高了Node都性能,可以處理大量的并發請求。

接下來寫一個阻塞代碼實例
創建一個文件input.txt,內容如下
學習前端知識,記錄筆記 ,來segmentfault。

創建main.js 文件,代碼如下:

const fs = require("fs") //fs模塊用于對系統文件及目錄進行讀寫操作。

const data = fs.readFileSync("input.txt");

console.log(data.toString());
console.log("執行程序結束")

非阻塞代碼實例

const fs = require("fs") //fs模塊用于對系統文件及目錄進行讀寫操作。

fs.readFile("input.txt",(err, data) => {
    if(err) {
        console.log(err)
    }else{
        console.log(data.toString())
    }
})
console.log("程序執行結束!")

以上兩個實例寫出了阻塞與非阻塞的不同。第一個實例在文件讀取完后才執行完程序。
第二個實例我們不需要等待文件讀取完,這樣就可以在讀取文件時同時執行接下來的代碼,大大提高了程序的性能。

因此,阻塞是按順序執行的,而非阻塞是不需要按順序的,所以如果需要處理回調函數的參數,我們就需要寫在回調函數內。

文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。

轉載請注明本文地址:http://m.specialneedsforspecialkids.com/yun/104356.html

相關文章

  • Node.js 指南(阻塞與非阻塞概述)

    摘要:標準庫中的所有方法都提供非阻塞的異步版本,并接受回調函數,某些方法還具有對應的阻塞方法,其名稱以結尾。比較代碼阻塞方法同步執行,非阻塞方法異步執行。 阻塞與非阻塞概述 此概述介紹了Node.js中阻塞與非阻塞調用之間的區別,此概述將引用事件循環和libuv,但不需要事先了解這些主題,假設讀者對JavaScript語言和Node.js回調模式有基本的了解。 I/O主要指與libuv支持的...

    zebrayoung 評論0 收藏0
  • node.js的異步IO 第一篇

    摘要:給出了解決方案就是單線程,遠離線程鎖,狀態同步的問題,使用異步讓單線程遠離阻塞,高效利用。而實際上的異步是采用了線程池技術,發起異步時,把操作扔到線程池里面執行,然后主線程繼續執行其他操作,執行完畢通過線程間通信通知主線程,主線程執行回調。 異步IO,事件驅動,單線程構成了node的基調,為什么異步IO在node中如此重要呢? 我們先來說一下異步的概念,異步常見于前端開發,例如ajax...

    feng409 評論0 收藏0
  • Node.js 指南(關于Node.js

    摘要:如果不熟悉這種語言,有一篇關于阻塞與非阻塞的完整文章。在設計上與的或的等系統類似,并受其影響,進一步采用事件模型。它將事件循環呈現為運行時構造而不是庫,在其他系統中,始終存在阻塞調用以啟動事件循環。上一篇指南目錄下一篇入門指南 關于Node.js 作為異步事件驅動的JavaScript運行時,Node旨在構建可伸縮的網絡應用程序,在下面的hello world示例中,可以同時處理許多連...

    Java_oldboy 評論0 收藏0
  • node - 非阻塞的異步 IO

    摘要:而線程是進程的一部分,二者相扶相依,其中單線程被稱為輕權進程或輕量級進程,執行特性線程只有個基本狀態就緒,執行,阻塞。以上所述證明了操作與其他函數的這種區別是由實現,是用多線程的方式,在標準的阻塞式上模擬非阻塞異步,線程池默認限制四線程。 node - 非阻塞的異步 IO 每當我們提起 node.js 時總會脫口而出 事件驅動、非阻塞I/O 和 單線程,所以我總結了以下幾點對這三項概念...

    yuxue 評論0 收藏0

發表評論

0條評論

最新活動
閱讀需要支付1元查看
<