最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Node.js 使用流實(shí)現(xiàn)讀寫(xiě)同步邊讀邊寫(xiě)功能

 更新時(shí)間:2017年09月11日 08:39:35   作者:八bug哥哥  
本文通過(guò)代碼給大家介紹了Node.js 使用流實(shí)現(xiàn)讀寫(xiě)同步邊讀邊寫(xiě)功能,非常不錯(cuò),具有參考借鑒價(jià)值,需要的額朋友參考下吧

廢話不多說(shuō)了,直接給大家貼代碼了,具體代碼如下所示:

//10個(gè)數(shù) 10個(gè)字節(jié),每次讀4b,寫(xiě)1b
let fs=require("fs");
function pipe(source,target) {
  //先創(chuàng)建可讀流,再創(chuàng)建可寫(xiě)流
  //先讀一次,rs.on(data)
  //將讀到的類容寫(xiě)入目標(biāo)中 ,返回布爾值,如果是ture,繼續(xù)寫(xiě),默認(rèn)情況應(yīng)該是false,暫停讀取
  //ws.on('drain'),抽干后,回復(fù)讀取
  //監(jiān)聽(tīng)讀取文件完畢后,關(guān)閉讀取rs.on('end')
  let rs=fs.createReadStream(source,{highWaterMark:4});
  let ws=fs.createWriteStream(target,{highWaterMark:1});
  rs.on('data',function (chunk) { //chunk是buffer類型
    if(ws.write(chunk)===false){
      //寫(xiě)不下,停止讀取
      rs.pause()
    }
  });
  ws.on('drain',function () {
    //每次寫(xiě)的內(nèi)存干了就恢復(fù)讀取
    console.log("111");
    rs.resume() //恢復(fù)讀取
  });
  rs.on('end',function (chunk) {
    ws.end();
  })
}
pipe('./1.txt','./3.txt')

上面這種寫(xiě)法比較繁瑣,大家看完后,忘記就行

node.js提供給我們內(nèi)置方法pipe

//10個(gè)數(shù) 10個(gè)字節(jié),每次讀4b,寫(xiě)1b
let fs=require("fs");
function pipe(source,target) {
  let rs=fs.createReadStream(source,{highWaterMark:4});
  let ws=fs.createWriteStream(target,{highWaterMark:1});
  //可讀流到可寫(xiě)流,異步操作,可以保證內(nèi)存不會(huì)被淹沒(méi),讀一點(diǎn),寫(xiě)一點(diǎn)
  // 如果想看文件類容,使用readFile

  rs.pipe(ws);
}
pipe('./1.txt','./4.txt')

直接將讀取的流操作到寫(xiě)入流中,還是異步操作

總結(jié)

以上所述是小編給大家介紹的Node.js 使用流實(shí)現(xiàn)讀寫(xiě)同步邊讀邊寫(xiě)功能,希望對(duì)大家有所幫助,如果大家有任何疑問(wèn)請(qǐng)給我留言,小編會(huì)及時(shí)回復(fù)大家的。在此也非常感謝大家對(duì)腳本之家網(wǎng)站的支持!

相關(guān)文章

  • Nodejs中獲取當(dāng)前函數(shù)被調(diào)用的行數(shù)及文件名詳解

    Nodejs中獲取當(dāng)前函數(shù)被調(diào)用的行數(shù)及文件名詳解

    這篇文章主要給大家介紹了關(guān)于Nodejs中獲取當(dāng)前函數(shù)被調(diào)用的行數(shù)及文件名的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2018-12-12
  • 使用node.js中的Buffer類處理二進(jìn)制數(shù)據(jù)的方法

    使用node.js中的Buffer類處理二進(jìn)制數(shù)據(jù)的方法

    大家應(yīng)該都知道在客戶端JavaScript腳本代碼中,對(duì)二進(jìn)制數(shù)據(jù)并沒(méi)有提供一個(gè)很好的支持。然而,在處理TCP流或文件流時(shí),必須要處理二進(jìn)制數(shù)據(jù)。因此,下面通過(guò)這篇文章來(lái)一起看看利用node.js中的Buffer類處理二進(jìn)制數(shù)據(jù)的方法,有需要的朋友們可以參考借鑒。
    2016-11-11
  • 利用node.js如何搭建一個(gè)簡(jiǎn)易的即時(shí)響應(yīng)服務(wù)器

    利用node.js如何搭建一個(gè)簡(jiǎn)易的即時(shí)響應(yīng)服務(wù)器

    這篇文章主要介紹了利用node.js如何搭建一個(gè)簡(jiǎn)易的即時(shí)響應(yīng)服務(wù)器的相關(guān)資料,文中介紹的非常詳細(xì),對(duì)大家具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面跟著小編一起來(lái)學(xué)習(xí)學(xué)習(xí)吧。
    2017-05-05
  • node.js微信小程序配置消息推送的實(shí)現(xiàn)

    node.js微信小程序配置消息推送的實(shí)現(xiàn)

    這篇文章主要介紹了node.js微信小程序配置消息推送的實(shí)現(xiàn),小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2019-02-02
  • 關(guān)于Yarn的使用及說(shuō)明

    關(guān)于Yarn的使用及說(shuō)明

    這篇文章主要介紹了關(guān)于Yarn的使用及說(shuō)明,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-11-11
  • NodeJS實(shí)現(xiàn)客戶端js加密

    NodeJS實(shí)現(xiàn)客戶端js加密

    本文主要介紹了NodeJS實(shí)現(xiàn)客戶端js加密的思路與方法,具有一定的參考價(jià)值,下面跟著小編一起來(lái)看下吧
    2017-01-01
  • 切換到淘寶最新npm鏡像源的全面指南(支持 Windows、macOS 和多種 Linux 發(fā)行版)

    切換到淘寶最新npm鏡像源的全面指南(支持 Windows、macOS 和多種 Linux

    在開(kāi)發(fā)過(guò)程中,npm 是前端開(kāi)發(fā)者不可或缺的工具,但對(duì)于國(guó)內(nèi)的開(kāi)發(fā)者來(lái)說(shuō),npm 官方源在下載速度上存在一定的瓶頸,本文將詳細(xì)介紹如何在 Windows、macOS 以及各類 Linux 發(fā)行版上切換到淘寶的 npm 鏡像源,需要的朋友可以參考下
    2025-03-03
  • 淺談Node的內(nèi)存泄露

    淺談Node的內(nèi)存泄露

    隨著node、react同構(gòu)等技術(shù)越來(lái)越廣泛地使用, 內(nèi)存泄漏的事情時(shí)有發(fā)生,應(yīng)當(dāng)引起足夠的重視,本文主要介紹了Node的內(nèi)存泄露,對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2022-05-05
  • Koa2微信公眾號(hào)開(kāi)發(fā)之消息管理

    Koa2微信公眾號(hào)開(kāi)發(fā)之消息管理

    這篇文章主要介紹了Koa2微信公眾號(hào)開(kāi)發(fā)之消息管理,這一節(jié)我們就來(lái)看看公眾號(hào)的消息管理。并實(shí)現(xiàn)一個(gè)自動(dòng)回復(fù)功能,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2018-05-05
  • 詳解從NodeJS搭建中間層再談前后端分離

    詳解從NodeJS搭建中間層再談前后端分離

    這篇文章主要介紹了詳解從NodeJS搭建中間層再談前后端分離,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2018-11-11

最新評(píng)論

新晃| 紫阳县| 靖边县| 龙海市| 清涧县| 南和县| 池州市| 霍山县| 连平县| 绍兴市| 临湘市| 晋中市| 太谷县| 尼玛县| 威宁| 罗城| 阿克苏市| 阿拉善左旗| 青冈县| 天祝| 凤庆县| 屏南县| 永春县| 霸州市| 宁阳县| 曲麻莱县| 正阳县| 柞水县| 会昌县| 黎平县| 肇州县| 余干县| 福海县| 昌黎县| 天台县| 长沙县| 札达县| 金寨县| 微山县| 济源市| 枝江市|