Java多線程runnable
阿新 • • 發佈:2018-11-26
for 調用 args nts 問題 線程安全 p s 存在 ant
主要為大家分享Java多線程怎麽實現Runnable方式
一 :主要步驟
1.定義實現Runnable接口
2.覆蓋Runnable接口中run方法,將線程要運行的代碼存在run方法裏
3.用Thread類建立線程對象
4.將Runnable接口的子類對象作為實際參數傳給Thread類的構造函數
5.調用Thread類的start來開啟線程,並且調用Runnable接口的run方法
二 :線程安全問題
怎麽找問題
1.了解知道哪些代碼用的多線程運行
2.明確共享的數據
3.知道多線程中的哪些運行代碼用的共享數據
class wantSum{ private int sum;public void add(int n){ sum+=n; System.out.println("sum="+sum); } } class Cus implements Runnable{ private wantSum a=new wantSum(); public void run(){ synchronized(a){ for(int x=0;x<3;x++) { a.add(100); } } } }public class wantSumDemo{ public static void main(String []args){ Cus b=new Cus(); Thread t1=new Thread(b); Thread t2=new Thread(b); t1.start(); t2.start(); } }
小總結:
1.定義一個類
2.在實現Runnable的類中要重寫run方法去調用類中的方法
3.在main方法裏定義線程去執行
Java多線程runnable