有一個獲取網上信息的方法,在多個子窗體中都會被調用,使主窗體加載時會有十幾秒的卡頓,這個要怎么解決?
1 回答

墨色風雨
TA貢獻1853條經驗 獲得超6個贊
不要讓主UI線程執行耗時的操作,只要是耗時的操作需要創建一個線程單獨執行,這樣就可以避免阻塞主UI線程了
你可以參考下我這段代碼
private void dealPDF() { //顯示處理中 progressIndicator.setVisible(true); //把耗時的操作放到事件隊列中 EventQueue.invokeLater(()->{ String text = inputFileField.getText(); Map<String,Object> result = getPdfWords(text); String data = result.get("data").toString(); String size = result.get("size").toString(); Platform.runLater(()->{ wordArea.clear(); wordArea.appendText(data); wordSize.setText(size); }); //關閉處理中, progressIndicator.setVisible(false); }); }
- 1 回答
- 0 關注
- 710 瀏覽
添加回答
舉報
0/150
提交
取消