第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問(wèn)題,去搜搜看,總會(huì)有你想問(wèn)的

如何使 fs writeFile 更快地寫(xiě)入圖像?

如何使 fs writeFile 更快地寫(xiě)入圖像?

我怎樣才能讓它更快?我正在使用節(jié)點(diǎn)和 fs 庫(kù)。這是發(fā)送 jpg 圖像的 fs.Readable 流的 POST 請(qǐng)求的端點(diǎn)。代碼開(kāi)始停留在 800 kB 左右。最終,我希望能夠保存視頻。理想情況下,我希望它花費(fèi)的時(shí)間少于十秒。  var bufs = [];  readStream.on('data', function(d){ bufs.push(d); });  readStream.on('end', function(){  var buf = Buffer.concat(bufs);  console.log(buf);  fs.writeFile("test.jpg", buf, ()=>{console.log('hi')});  });
查看完整描述

1 回答

?
萬(wàn)千封印

TA貢獻(xiàn)1891條經(jīng)驗(yàn) 獲得超3個(gè)贊

一種更簡(jiǎn)單的方法,也使用更少的內(nèi)存并并行化寫(xiě)入(在塊到達(dá)時(shí)寫(xiě)入塊)并且應(yīng)該更快一點(diǎn),那就是將流直接通過(guò)管道傳輸?shù)捷敵鑫募?/p>


readStream.pipe(fs.createWriteStream("test.jpg"));

readStream.on('close', () => {

    console.log("all done now");

});

或者,通過(guò)更好的錯(cuò)誤處理,可以捕獲兩個(gè)流上的錯(cuò)誤并告訴您一切何時(shí)完成:


const { pipeline } = require('stream');


pipeline(readStream, fs.createWriteStream("test.jpg"), err => {

    if (err) {

        console.log(err);

    } else {

        console.log("all done");

    }

});

或者,使用 Promise 和pipeline():


const pipeline = util.promisify(require('stream').pipeline);


pipeline(readStream, fs.createWriteStream("test.jpg")).then(() => {

   console.log("all done");

}).catch(err => {

   console.log(err);

});


查看完整回答
反對(duì) 回復(fù) 2023-07-29
  • 1 回答
  • 0 關(guān)注
  • 152 瀏覽
慕課專(zhuān)欄
更多

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢(xún)優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)