java線程:
線程是一個程式內部的順序控制流程。
cpu實際上在一個時間點上,只執行一個。只不過我們把cup分成了多個時間片,由於速度很快,我們看起來像是多個線程。。
就像你的時間分成幾片,這樣整體看來做事情有規律,效率就會高,何況是cup呢。
線程的建立和啟動:
方法一:
java線程通過java.lang.Thread類來實現。
VM啟動時會有一個主方法所定義的線程,
每一個線程是Tread對象通過它的run()方法來完成操作。
啟動線程方式:Thread的start()方法。
例如:
public class TestThread
{
public static void main(String[] args)
{
Runner1 r = new Runner1();
//定義線程對象。並且調用線程的構造方法。
Thread t = new Thread(r);
//啟動線程。
t.start();
for(int i=0;i<100;i++)
{
System.out.println("Main thread-----" + i);
}
}
}
class Runner1 implements Runnable
{
public void run()
{
for (int i=1;i<100;i++)
{
System.out.println("Runner1" + i);
}
}
}
方法二:
定義一個Thread類的子類,重寫run()方法,然後產生這個類的對象,在啟動進程。
public class TestThread
{
public static void main(String[] args)
{
Runner1 r = new Runner1();
//啟動線程。
r.start();
for(int i=0;i<100;i++)
{
System.out.println("Main thread-----" + i);
}
}
}
class Runner1 extends Thread
{
public void run()
{
for (int i=1;i<100;i++)
{
System.out.println("Runner1" + i);
}
}
}
兩種方式比較,實現介面這種方法較靈活些。
線程式控制制方法: