[問題] 想請問lock的用法

作者: LaPass (LaPass)   2015-05-29 11:53:19
想做到類似 BlockingQueue 的功能
請問該怎麼做?
例如
void start(Item t){
//解除下面的get()的 block
}
void run(){
while(true){
//block 這條 thread
dosomething();
}
}
感覺起來要用lock,但是又怕start的時候被 block住
我希望只有在run()被block的狀況下才解除block
其他狀況什麼都不做
作者: Chikei ( )   2015-05-29 14:02:00
Object.wait/notify
作者: LaPass (LaPass)   2015-05-29 15:03:00
試不出來,叫了notify notifyAll 可是wait都沒醒是在android上,不過這應該不會有影響才對用 thread.interrupt() 可以叫的醒,不過覺得用那種方式去叫執行序不太好...因為可能作到一半(非block狀態下)被打斷
作者: Frozenmouse (*冰之鼠*)   2015-05-29 17:25:00
你兩個Thread拿到的this是一樣的嗎?如果兩條thread操作的DrawRunnable是同一個,這code看起來沒問題…orz
作者: LaPass (LaPass)   2015-05-29 18:18:00
我確認一下.....對不起,是我耍蠢了 m(_ _)m

Links booklink

Contact Us: admin [ a t ] ucptt.com