1. 多任務實現(xiàn)方法根據(jù)操作系統(tǒng)是否隨時地能中止程序的運行,可以分為兩類。可以隨時中止的稱為preemptive multitasking,如UNIX/Linux,OS X,Windows NT/XP,以及Windows 9x下的32位程序。不能的則被稱為cooperative multitasking,如Windows 3.x和Mac OS 9,已經(jīng)一些手機上的系統(tǒng)。后者有一個嚴重的缺陷,當運行的程序不交出控制權的時候,整個系統(tǒng)就掛起了。
多線程則更深入了一步,單獨的程序同時執(zhí)行多個任務。
兩者的差異在于,每個進程擁有屬于自己的完整的變量群,而線程則享有相同的數(shù)據(jù)。
2. 運行線程的簡單步驟
1) 繼承Runnable接口
public interface Runnable
{
void run();
}
class MyRunnable implements Runnable
{
public void run()
{
task code
}
}
2. 創(chuàng)建該類的實例
Runnable r = new MyRunnable();
3. 通過這個實例創(chuàng)建一個線程
Thread t = new Thread(r);
4. 運行該線程
t.start();
另外,也可以通過繼承Thread類并覆蓋run()方法實現(xiàn),但并不提倡,因為太多單獨的線程很耗資源。
3. 不要直接調(diào)用run()方法