一、實現runable介面,重新run方法
1、同步**塊
// 模擬賣票系統
class
window
implements
runnable
catch
(interruptedexception e)
system.out.
println
(thread.
currentthread()
.getname()
+":票號為:"
+ ticket)
; ticket--;}
else}}
}}public
class
threadtest1
}
2、同步方法private
int ticket =
100;
@override
public
void
run()}
}public
synchronized
void
show()
catch
(interruptedexception e)
system.out.
println
(thread.
currentthread()
.getname()
+":票號為:"
+ ticket)
; ticket--;}
}
3、加鎖還可以是lock鎖//lock和synchronized的區別,前者需要自己關閉,後者自動關閉
@override
public
void
run(
)catch
(interruptedexception e)
system.out.
println
(thread.
currentthread()
.getname()
+":"
+ticket)
; ticket--;}
else
}finally
}}
二、繼承thread類重寫run方法public
static
void
main
(string[
] args)
class
threadtest1
extends
thread}}
}
三、實現callable介面,重新run方法public class callabletest catch (interruptedexception e) catch (executionexception e)
}}//1、建立乙個類實現callable介面,實現call方法
class numthread implements callable
}return sum;
}}
四、使用執行緒池建立執行緒public
class
threadpolltest
}class
numberthread
implements
runnable}}
}
五、多執行緒常用方法thread.yield();
//讓出cpu執行權,自己和其他執行緒一起再次搶占
start();
//執行緒開啟
sleep(long millis)
//開啟睡眠狀態,過了millis毫秒時開始執行,不釋放鎖
setpriority(int newpriority)
getpriority()
//設定和得到執行緒的優先順序,1-10,預設是5
setname(string name)
getname()
//設定執行緒的名字和得到名字
setdaemon(boolean on)
//設定執行緒為守護執行緒
join()
//加入新的乙個執行緒,並且需要新的執行緒執行完,這個執行緒才可以執行
interrupt()
//中斷執行緒
interrupted()
//判斷執行緒中斷
getstate()
//得到執行緒的狀態
多執行緒的建立 四種方式以及使用建議
方式 二 實現 runnable介面 以上兩者的聯絡與使用技巧 方式三 實現 callable介面 callable介面方式的特點 方式四 執行緒池 執行緒池的特點 1.建立乙個繼承於 thread類的子類 class thread1 extends thread public class thre...
多執行緒 四種建立方式
public class threadestablish1 start 主線程 for int i 0 i 100 i 1.建立乙個實現了thread類的子類 class subthread extends thread 注意點 如果自己手動呼叫run 方法,那麼就只是普通方法,沒有啟動多執行緒模式...
python多執行緒使用thread
import sched import threading import time defnew task function,delay time,args 定時任務函式 param function 需要執行的函式 param delay time 延遲多少時間執行 param args 需要給f...