麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 學院 > 開發設計 > 正文

提升Java桌面客戶端程序性能

2019-11-18 13:44:43
字體:
來源:轉載
供稿:網友

  提升java桌面客戶端程序性能
2月15日,Edward Ort在SDN(Sun Developer Network)聊天室主持了一次關于提升Java桌面客戶端程序性能的聊天,這次聊天請來了兩位重量級的人物:Chet Haase, Java2D工程組的要害成員;Scott Violet, JFC/SWing的架構師。

這次聊天主要關注在JFC/SWing/Java2D當前在性能上有哪些提升,以及將來的Java版本在這些方面將有什么改進。

下面我們來看一些要害的、比較有趣的聊天內容。



為什么repaint()刷新時會造成灰色塊?
Scott Violet: 這是一個非常適時的問題。當我們使用AWT/SWing時,至少有兩個線程在起作用:一個線程負責接收和處理本地事件,另一個線程負責分派這些事件(即 EDT)。對于本地線程,當它接收到一個eXPose事件,會立即用灰色填充背景,當事件在EDT中被處理時才開始做實際上的繪制工作。這樣的話假如你的程序正在繁忙,在顯示灰色塊和實際的繪制之間會有一個顯而易見的延遲。有個好消息是我們正在做這方面的改進工作,讓每個窗口都有一個緩沖圖像,這樣的話,當窗口收到一個expose事件,我們立即將緩沖區的圖像復制過來,并且你的程序不用做任何事情。這樣你就再也不會看到灰色塊了,甚至于你的程序繁忙時,我們照樣能恢復窗口里的顯示內容。我們希望能盡早完成這項工作,當我們完成時會將它公布出來。



為什么不把SwingWorker(或者類似的機制)沒有成為標準API? 有什么建議的方式來處理過程靈敏的任務?
Scott Violet: 很好的問題. 我們就要完成一個版本的SwingWorker,它將會是Java1.6的一部分。這也就是Igor, Brent, Bino 和我在去年JavaOne大會上談到的那個版本。這個版本的SwingWorker支持PRoperty change監聽器. 它非常好用.



JDNC和JDIC會有什么新的發展?
Scott Violet: 這兩個項目一直在健狀的發展. JDNC正向下一個里程碑邁進,它會包含一個login framework, 并且修改了data model和binding API.



為什么一定要等到Java1.6,而不是以jar形式在1.5中使用?
Scott Violet: 我想你在提SwingWorker吧. 我們正在考慮針對1.5發布一個非綁定的SwingWorker版本, 但還沒有作出決定.



Resizing窗口為什么要等到resizing結束后才起作用?
Scott Violet: 有個好消息是,假如你要實時resize窗口, 只要簡單的調用Toolkit.getDefaultToolkit().setDynamicLayout(true). 如何相應則依靠于你的程序和窗口內容. 我要說我們正在考慮使實時resize特性成為1.6的缺省設置.



當開啟1000-10000個小圖片(120x100)時, ImageIcon是最好的選擇嗎?或者imageI/O JAI更快些? 這三者在內存使用上有什么不同嗎?
Chet Haase: 我知道,在我們1.4的ImageIO的jpep加載器有性能上的問題,它甚至慢過于老的Toolkit加載器. 我不知道這些問題是否已經修復. 要確定是否已修復的最好的方法是: 寫一個簡單的microbenchmark程序,時間上的不同就可以看出誰好誰壞. 我愿意看到最終有人選擇ImageIO, 但是為了達到目的,我們可能會碰到一些瓶項。目前我還不知道JAI的性能如何.



有打算答應Swing程序能編譯成本地代碼嗎?
Scott Violet: 我只能說,與此最類似的事情就是,我們正在考慮讓運行中的各個JVM使用持久化編譯的代碼, 每次你運行程序我們都不再編譯大量重復的方法;假如方法已被緩存,這會極大的提高運行速度.



使用Java 1.5中的Synth,經測試發現, Swing程序的啟動時間變慢了,該如何避免此問題?
Scott Violet: 我懷疑慢下來的原因是采用了xml解析器。你可以提交一個test case以讓我們可以確定到底發生了什么事情。



有沒可能增加一個"dockable" framework到Swing?
Scott Violet: 真干脆. 我們看到越來越多的程序要求做到這個功能. 我們現在已將這個加進了1.6,雖然如此, 它不太可能會在1.7之前完成. 可能這是太遙遠的事情, 鉭我們會試著縮短版本發布周期:)



對于常規的Swing組件有什么改進, 比如JTable? 我有一個案子要'凍結'兩個或更多的Column,當前有無簡便的方法?
Scott Violet: 在1.6中,我們要加入table排序, 加亮顯示和過濾. JDNC現在有這個, 但它應該加到內核中才是.



全部聊天內容請看: Getting High Performance from Your Desktop Client

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 中文字幕在线资源 | 久久久久一本一区二区青青蜜月 | 超碰在线97国产 | 成人精品aaaa网站 | 在线免费亚洲 | 成人区精品一区二区婷婷 | 久久久久久久久成人 | 成人精品aaaa网站 | 成年人高清视频在线观看 | 久久精品欧美一区二区三区不卡 | 久久国产精品电影 | 国产系列 视频二区 | 国产一区影院 | 91福利社在线| 国产午夜精品视频免费不卡69堂 | 免费专区 - 91爱爱 | 国产激情精品一区二区三区 | 国内精品久久久久久久久久 | 久久久久久久久久久久免费 | 欧美日韩专区国产精品 | 欧美性生交xxxxx久久久缅北 | 老a影视网站在线观看免费 国产精品久久久久久久久久尿 | 青草av.久久免费一区 | 91久久夜色精品国产网站 | 99精彩视频在线观看 | 国产精品视频专区 | 国产成人高清在线观看 | 天天操综 | 国产成人aⅴ | 国产精品一区二区日韩 | 亚洲国产视频在线 | 中国hdxxxx护士爽在线观看 | 精品国产一区二区三区四区阿崩 | 久久国产成人精品国产成人亚洲 | 黄色av免费电影 | 日韩精品久久久久久 | 黄色成人小视频 | 外国一级黄色片 | 免费一级毛片网站 | 红桃一区| 依依成人精品视频 |