Re: [J2SE] ui thread
※ 引述《neigence ()》之銘言:
: 但以往在寫java的時後 不論在何時何地何條thread建的swing元件
: 其實都是可以正常運作的,但我懷疑只是我剛好沒遇到問題而已,其實這樣
: 是違反ui架構的
: 結論是 我的問題是
: 1. 是否在java中 要new Swing元件都必須在 ui-thread ?
: 2. 如果有事件要處理 都透過 SwingUtilities.invokerLater or invokerAndWait
: 來處理 相當於mfc的 PostMessage / SendMessage
: 3. SwingWorker好用嗎...(正在讀doc中...)
這個主題應以 thread-safe 為焦點來看。
如果有個 class/function 在實作時沒有作成 thread-safe,操作/使用該 class
instance/function 必須在同一個 thread(或者說多個 thread 操作/使用該 class
instance/function 的時間不能有重疊)。
AWT/swing 的設計不是 thread-safe,core classes 內的 AWT/swing 相關的
class 全不是 thread-safe(只有少數 class 中的少數操作有在 API doc 裡明確
指出是 thread-safe)。
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 218.173.138.157
討論串 (同標題文章)
本文引述了以下文章的的內容:
完整討論串 (本文為第 2 之 2 篇):