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

為了賬號安全,請及時綁定郵箱和手機(jī)立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

node.js中await會造成內(nèi)存泄漏?

node.js中await會造成內(nèi)存泄漏?

慕哥6287543 2019-01-24 21:55:32
最小復(fù)現(xiàn)代碼:test.jsfunction sleep(delay) {    return new Promise(resolve => setTimeout(resolve, delay)); }const _ = require('lodash');async function doTask() {    // console.log('start');     await sleep(_.random(10, 30));    // console.log('done');}async function start() {    await sleep(3);    await doTask();    await start(); // 去掉前面的await就好了} start(); setInterval(() => {    console.log(process.memoryUsage()); },10e3);進(jìn)程啟動的時候rss是22M,運行了1個多小時后內(nèi)存占用達(dá)到了380M  PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND 30211 devel     20   0 1229m 381m  10m S  1.0  9.6   1:36.63 node test.js# 在start函數(shù)的遞歸調(diào)用中取消await21729 devel     20   0  867m  23m  10m S  1.0  0.6   1:22.73 node test.js# 改成循環(huán)14498 devel     20   0  867m  24m  10m S  1.0  0.6   1:11.04 node test.js雖然確定是在遞歸調(diào)用的時候前面多加了個await,但是能解釋下原因么,是我使用的姿勢不對么
查看完整描述

1 回答

?
慕沐林林

TA貢獻(xiàn)2016條經(jīng)驗 獲得超9個贊

下一次start調(diào)用的時候,前一次的promise對象并沒有銷毀,所以每次都會產(chǎn)生一個新的promise對象,內(nèi)存可不就泄露了嗎

查看完整回答
反對 回復(fù) 2019-01-24
  • 1 回答
  • 0 關(guān)注
  • 705 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

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

幫助反饋 APP下載

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

公眾號

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