下载此文档

JAVA语言实务ppt课件.ppt


文档分类:办公文档 | 页数:约55页 举报非法文档有奖
1/55
下载提示
  • 1.该资料是网友上传的,本站提供全文预览,预览什么样,下载就什么样。
  • 2.下载该文档所得收入归上传者、原创者。
  • 3.下载的文档,不会出现我们的网址水印。
1/55 下载此文档
文档列表 文档介绍
什麼是「執行緒」
支援「平行處理」的執行控制機制,它可以執行程式中任何一組相關且可與程式中其它局部「平行處理」的程式片斷。
播放背景音樂
執行緒a:
數數運算
執行緒c:
動畫顯示
執行緒b:
程式(多執行緒)
Java語言實務
3
「執行緒」具有以下幾個根本特徵:
不是完整的程式。
隸屬於同一個程式的「執行緒」必需共享系統分配給所屬主程式的資源〔如記憶體空間、CPU時間等〕。
每一個「執行緒」都有自己的「執行堆疊」及「程式計數器」
程式可以設定「執行緒」的執行優先順序 及隸屬的「執行緒群組」。
每個「執行緒」於程式執行時的可能狀態有:born、ready、running、blocked、suspend、sleeping、waiting及dead。
Java語言實務
4
各作業系統對於具有相同優先權的「執行緒」有不同的處理方式 。
Java Runtime〔Java虛擬機器〕會於開始執行程式前,自動為程式建立一個「執行緒」以便控制及記錄程式執行時的狀態,這個「執行緒」通稱為main thread,當main thread結束時〔也就是說進入dead狀態時〕,程式的執行也就結束。
Java語言實務
5
執行緒的程式架構
在Java程式中,「執行緒」是以「執行緒」物件來表示,亦即在程式中一個「執行緒」物件就代表了一個「執行緒」
二種指定程式中局部的程式碼給「執行緒」物件 以便執行的方式
在程式中建立Thread類別的子類別,然後直接在子類別中改寫繼承自Thread類別的run() 方法
在程式中定義界面Runnable,然後改寫Runnable的run() 方法
Java語言實務
6
程式 Ex11_1 以Thread的子類別建立執行緒(1/2)
import .*;
import .*;
/* 建立Thread的子類別 */
class Counter_Thread extends Thread
{ private static int threadNum=0; /* 類別變數threadNum用來累計執行緒個數 */
private int currentThread, loopLimit;
public Counter_Thread(int loopLimit) /* 變數loopLimit為計數值的上限 */
{ = loopLimit;
currentThread = threadNum++;
}
private void pause(double seconds) /* 讓執行緒進入睡眠狀態 */
{ try {((*seconds));}
catch(InterruptedException ie) {};
}
public void run() /* 執行緒的執行由此開始 */
{ for(int i=0; i<loopLimit; i++)
{ ("Thread " + currentThread + ": counter=" + i);
pause(()); } // end for
}
} // end of Counter
Java語言實務
7
程式 Ex11_1 以Thread的子類別建立執行緒(2/2)
/* 測試執行緒 */
public class Counter
{
public static void main(String[] args)
{ /* 建立執行緒物件 */
Counter_Thread counterThread_1 = new Counter_Thread(8);
Counter_Thread counterThread_2 = new Counter_Thread(8);
();  /* 啟動執行緒 */
();
} // end main
} // end Counter
Java語言實務
8
程式 Ex11_1 可能的執行結果:
Thread 0: counter=0
Thread 1: counter=0
Thread 0: counter=1
Thread 1: counter=1
Thread 1: cou

JAVA语言实务ppt课件 来自淘豆网m.daumloan.com转载请标明出处.

相关文档 更多>>
非法内容举报中心
文档信息
  • 页数55
  • 收藏数0 收藏
  • 顶次数0
  • 上传人na2021
  • 文件大小917 KB
  • 时间2021-09-24
最近更新