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

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

sb.append(line)加上去之后,明顯變得非???,并且CPU占用率特別高?為什么

sb.append(line)加上去之后,明顯變得非常卡,并且CPU占用率特別高?為什么

臨摹微笑 2023-05-03 10:06:48
假設(shè)我需要通過Process來執(zhí)行一個(gè)進(jìn)程,并且需要把進(jìn)程寫入InputStream里面的東西進(jìn)行讀取并分析,并且假設(shè)這個(gè)進(jìn)程會(huì)產(chǎn)生很多的字符串輸出。假定這個(gè)進(jìn)程是curl。以下代碼:try {        // TODO add your handling code here:         StringBuilder sb = new StringBuilder();         ProcessBuilder pb = new ProcessBuilder("curl","http://www.sina.com.cn");             Process p = pb.start();         InputStream is = p.getInputStream();         BufferedReader reader = new BufferedReader(new InputStreamReader(is),4096);         String line = reader.readLine();        while(line != null){            //sb.append(line);             line = reader.readLine();         }         this.jTextArea1.append(sb.toString());     } catch (IOException ex) {            Logger.getLogger(MainWindow.class.getName()).log(Level.SEVERE, null, ex);     }在速度上似乎沒問題,但是將sb.append(line)加上去之后,明顯變得非常卡,并且CPU占用率特別高。這是為什么呢?
查看完整描述

2 回答

?
HUH函數(shù)

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

你這里面while(line != null) 可能跳不出來,他會(huì)一直是true。你試試看是不是這個(gè)問題?

查看完整回答
反對(duì) 回復(fù) 2023-05-06
?
一只名叫tom的貓

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

參考代碼如下:

InputStream is = null;try {
    ...    is = p.getInputStream();    String text = IOUtils.toString(is, "GBK");    this.jTextArea1.append(text);
} catch (...) {
    ...
} finally {
    IOUtils.closeQuietly(is)
}
查看完整回答
反對(duì) 回復(fù) 2023-05-06
  • 2 回答
  • 0 關(guān)注
  • 144 瀏覽

添加回答

舉報(bào)

0/150
提交
取消
微信客服

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

幫助反饋 APP下載

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

公眾號(hào)

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