理解node stream(流)的機制

2021-09-24 22:14:45 字數 459 閱讀 8902

本圖是依據《node.js高階程式設計》和node的官方api文件,自己總結出來的,如果有錯誤的地方煩請指正。

個人認為在學習流的時候通常需要認識到一下幾點

1.流是node對作業系統的一種資料傳輸的抽象實現,可以把node的stream理解為只是乙個介面,可以操作流,但是看不見流的本身。

2.寫入到流可以理解為寫入到流的緩衝區,資料從流中流出之後就像流水流走了一樣,緩衝區中就沒有這段資料了。

3.可寫流中寫入資料的時候,如果緩衝區滿了,就只能讓資料在記憶體中排隊。

4.可讀流中的資料也是像流水一樣從底層資料(比如檔案)中逐步獲取的,而不是先把整個檔案的資料讀到流中再去後續操作。並且要讓可讀流去從底層資料中讀取,一定要讓資料有消費者,就是資料要有人用。

流的理解 3

參考 流就是資料資料的抽像類,按照物件導向的思想,它就是多型 下面不討論多型的事了,貼幾張圖 來自 前端團隊的 注 圖中的writeorbuffer 佇列池,實際上就是 corked highwatermark 流的一切東西,完全可以從現實中找到答案。比較貼切的就是蓄水池.蓄水池肯定有大小的吧,流也...

流的理解 1

流就是一系列的資料 就跟陣列或者字串一樣。有一點不同,就是 stream 可能無法在一次性全部可用,且它們不需要與記憶體完全合槽。這麼一來,stream 在處理大量資料,或者操作乙個一次只給出一部分資料的資料來源的時候顯得格外有用。其實,流不只是在操作大量資料的時候有用。它還為在 中使用各種強大的組...

理解文件流

這個暑假裡的實習是真正讓我體會到了做前端一定要理解文件流。之前一直處於必須給元素加邊框才能看到我講元素放置在了文件中的什麼位置。理解了文件流,腦海中就會定位到相應的元素。文件流,其實本沒有這樣的定義,有的是普通流的概念。簡單說就是元素按照其在html中的位置順序決定排布的過程。並且這種過程遵循標準的...