看板 [ java ]
討論串[問題] synchronized(lock){lock.wait()}
共 5 篇文章
首頁
上一頁
1
下一頁
尾頁

推噓8(8推 0噓 4→)留言12則,0人參與, 最新作者allstarschh (allstars)時間17年前 (2007/10/09 01:04), 編輯資訊
1
0
0
內容預覽:
//Thread A. synchronized(lock){. lock.wait();. }. //Thread B. synchronized(lock){. lock.notify();. }. 想請問 Thread A先跑 所以先call lock.wait(). 後來Thread B跑.
(還有135個字)

推噓2(2推 0噓 1→)留言3則,0人參與, 最新作者adrianshum (Alien)時間17年前 (2007/10/09 19:39), 編輯資訊
1
0
0
內容預覽:
我之前有貼過一篇文章講 wait & notify 的. 大概而言會是這樣:. A 取得 lock 的 mutex (當成是 mutex 想吧). B 企圖想acquire lock, 但被 A acquire 了所以 B 會等. 然後 A 到 wait 的時候會把 lock release 和等待
(還有158個字)

推噓0(0推 0噓 0→)留言0則,0人參與, 最新作者dreamboxer (陌生人)時間17年前 (2007/10/10 17:02), 編輯資訊
0
0
0
內容預覽:
我不確定我所理解的有沒有錯誤...但如果上面的程式以Java執行. 在 Thread A 裡面寫 synchronized(lock) 又寫 lock.wait(); 是不是有點奇怪?@@. (應該分別寫成wait()和notify()就好吧?). 因為 lock.wait() 應該是指讓 lock
(還有350個字)

推噓0(0推 0噓 0→)留言0則,0人參與, 最新作者adrianshum (Alien)時間17年前 (2007/10/10 17:08), 編輯資訊
1
0
0
內容預覽:
應該是你搞錯了.. 所謂 wait pool, wait 的就是 Thread 本身.. 詳細的實作我不太清楚, 但 lock.wait(), 概念. 上而言, 就是 current thread 放到 lock 的 wait pool. 裡等待, 直到有人 invoke lock 的 notify

推噓1(1推 0噓 0→)留言1則,0人參與, 最新作者adrianshum (Alien)時間17年前 (2007/10/10 17:46), 編輯資訊
0
0
0
內容預覽:
順手寫了一個測試程式 (我上班在作啥? XD). class WaitThread extends Thread {. Object lock = null;. public WaitThread(Object lock) {. this.lock = lock;. }. public void r
(還有1873個字)
首頁
上一頁
1
下一頁
尾頁