1. 程式人生 > >執行緒中的yield()方法

執行緒中的yield()方法

Thread.yield()方法作用是:暫停當前正在執行的執行緒物件(及放棄當前擁有的cup資源),並執行其他執行緒。

yield()做的是讓當前執行執行緒回到可執行狀態,以允許具有相同優先順序的其他執行緒獲得執行機會。因此,使用yield()的
目的是讓相同優先順序的執行緒之間能適當的輪轉執行。但是,實際中無法保證yield()達到讓步目的,因為讓步的執行緒還有可能被
執行緒排程程式再次選中。
 
結論:yield()從未導致執行緒轉到等待/睡眠/阻塞狀態。在大多數情況下,yield()將導致執行緒從執行狀態轉到可執行狀態,但有可能沒有效果