開發中用到的執行緒方法也是很常見的,其方法的區別理解清楚了,操作也就順手了。執行緒中的常用的方法有如下幾個,分別是sleep(),wait()和notify()和notifyall()、suspend()和resume()、yield()、join()、interrupt()。下面我就以上方法做乙個簡單的介紹。首先是join()方法,該方法裡面的引數是乙個毫秒值,表示等待幾秒執行該操作。它的主要作用就是同步,由執行緒的並行轉換為序列。通俗的說就是停止當前的執行緒,讓使用join的執行緒先執行完畢,再執行其它執行緒。**如下:
執行緒任務類:
packagecn.test;
public
class taskmy implements
runnable
}}
建立執行緒並執行執行緒:
packagecn.test;
public
class
demomain
}
這串**的作用是先執行t1執行緒,再執行t2執行緒。對於這樣,如果改變join和start方法的順序,結果是不一樣,失去了同步的作用。join的原理說的簡單點就是,呼叫其它執行緒的wait方法,執行完畢後再執行notifyall方法。
sleep和wait方法之間有什麼區別,這個也是必須要掌握的。首先sleep是執行緒的方法,而wait是object方法。sleep它是讓出cpu資源,暫停設定的時間,時間一到,恢復執行狀態,最主要的是它不會釋放物件鎖。而呼叫wait方法,釋放物件鎖,處於掛起狀態,只有呼叫notifyall才可以進入物件鎖定池。下面是**案例:
packagecn.test;
public
class taskmy implements
runnable
catch
(interruptedexception e)
}system.out.println("執行緒1結束");
}}
執行緒常用的方法
執行緒常用的方法 thread string name 初始化執行緒的名字 setname string name 設定執行緒物件名 getname 返回執行緒的名字 static sleep 那個執行緒執行了sleep的 那麼該執行緒就會睡眠指定毫秒數。currentthread 返回當前執行該方...
執行緒常用的方法
public class myrunner3 extends thread catch interruptedexception e public class testthread3 catch interruptedexception e for int i 0 i 100 i public cl...
執行緒常用的方法
start run currentthread getname setname yield join sleep long millitime isalive getpriority class mythread extends thread catch interruptedexception e...