java中支持多個線程同時運作!
阿新 • • 發佈:2017-12-26
java 多線程public static void main(String[] args){ Runnable status_runnable=GenerateStatus();
Runnable session_runnable=MyThread(session);
Thread statusThread=Thread(status_runnable);//線程中放了任務
Thread session_thread=Thread(session_runnable);
statusThread.start();
session_thread.start();
}
兩個類的實現如下,第一個是GenerateStatus
import java.util.Random; public class GenerateStatus implements Runnable{ private String temperature; private String free_Space; public GenerateStatus(){ /*構造方法*/ } /*線程中運行的程序*/ public void run() {//這裏因為實現接口這個必須實現 Random random=new Random(); while(true) { temperature =((Integer)(random.nextInt(70)+20)).toString(); free_Space=((Integer)(random.nextInt(100)+1)).toString()+"G"; StatusMap.put("temperature",temperature); StatusMap.put("free_Space",free_Space); System.out.println("test"); try { Thread.sleep(1000); } catch (InterruptedException e) { e.printStackTrace(); } } } }
第二個類MyThread
javax.websocket.Session; java.io.IOException; MyThread Runnable { String ; String ; Session ; MyThread(Session session) IOException { .=session; } run() { (){ { Thread.(); } (InterruptedException e) { e.printStackTrace(); } System..println(); =StatusMap.(); =StatusMap.(); { .getBasicRemote().sendText(); .getBasicRemote().sendText(); } (IOException e) { e.printStackTrace(); } } } }
PS:若只需一個線程,就可以直接建立個線程使其繼承Thread,在主函數中直接調用。
Thread statusThread=new MyThread(session); statusThread.start();//這樣就可以了。但是不能多個線程同時運行!
java中支持多個線程同時運作!