1. 程式人生 > >java中支持多個線程同時運作!

java中支持多個線程同時運作!

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中支持多個線程同時運作!