- 1、本文档共15页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
什麼是执行绪
Thread 簡介--什麼是執行緒 定義: 程式的執行軌跡 程式,行程,執行緒 程式 (Program) 儲存於硬碟中的可執行檔稱為 Program 行程 (Process) 載入記憶體中的可執行檔稱為 Process 執行緒 (Thread) Process 中的一段程式碼執行軌跡稱為 Thread,是電腦中最小的執行單位。 多工與多執行緒 目前的作業系統都強調多工(Multitasking) 。 例如:在Windows上可以同時執行小畫家、記事本與IE瀏覽器等多個應用程式。 多執行緒(Multithreaded)是指在單一應用程式擁有多個執行流程。 例如:IE瀏覽器可以在下載網頁檔案的同時顯示動畫、撥放音樂或捲動視窗瀏覽網頁內容。 建立一個執行緒的方法 要建立一個 Thread,先要建造一個 Thread 物件,再用 new 產生 Thread 的個體。您 new 幾次,就有幾個 Thread。 建造一個 Thread 物件的方法: 直接繼承 Thread 類別 實作 Runnable 介面 二種方法皆可實作出多執行緒的程式,就看程式開發人員如何抉擇與使用。通常來說,利用Thread類別撰寫比較容易,用Runnable則可以忽略Java中單一繼承的限制 利用Runnable介面來撰寫執行緒,程式較有一致性,當其他程式要用到時,可以有共同介面的標準,也比較符合物件導向(OO)的精神。 Thread 物件簡介 繼承Thread類別: 使用時機:若類別沒有繼承其他類別,就可以直接繼承Thread類別,然後覆寫run()方法。 在主類別程式中再建立執行緒物件,然後以start()方法啟動個別的執行緒。 範例程式: .tw/~reler/object/TestThread.java Thread 物件簡介 使用方法: class MyThread extends Thread { //呼叫父類別Thread的Thread(String name)建構子 public MyThread(String n) //設定執行緒名稱 { super(n); } public void run() //Thread執行的程式片段 {…….. } } Class MainClass{ public static void main(String[] args) { //主類別程式 //建立執行緒 MyThread t1 = new MyThread(t1); MyThread t2 = new MyThread(t2); //啟動執行緒 t1.start(); t2.start(); } } Thread 物件簡介 父類別Thread的建構子參數介紹: Thread() Thread(String name) Thread(Runnable target) Thread(Runnable target, String name) 建立Thread物件,參數name是執行緒名稱,target是實作Runnable介面的物件(使用繼承Thread時用不到target參數)。 Thread 物件簡介 與 “行為” 有關的方法: void run(): 定義此執行緒的任務。一旦執行緒醒過來後,run() 裡面定義什麼,它就執行什麼。執行完 run() 後就會死。 void start(): 開始執行 Thread。此方法會觸動 run() 函數 boolean isAlive(): 傳回此 Thread 是否活動中。 static void yield(): 把自己暫停,先禮讓其它相同優先順序的 Thread 執行。 static void sleep(long millis): 讓自己小睡片刻,經過 millis 微秒 (ms) 後再醒過來 void join(): 停止執行,等死。 void destroy(): 命令 Thread 馬上去死。 Thread 物件簡介 與 “屬性” 有關的方法: void setName(String name): 為此執行緒取個名字 String getName(): 傳回此執行緒的名字 void setPriority(int newPriority): 設定此執行緒的優先順序。數字越大,優先順序越高。 int getPriority(): 傳回此執行緒的優先順序。 String toString(): 傳回此執行緒的名稱,優先順序,及所屬群組。 Thread 物件內的常數 static int MAX_PRIORITY: 最高優先順序值。 static int MIN_PRIORITY: 最低優先順序值。 static int NORM_PRIORITY:
您可能关注的文档
- 人教版新课标八年级上册第一单元第四课 甲午中日战争(共28张PPT).ppt
- 人教版物理必修二第六章第五节 宇宙航行.ppt
- 人教版话题6---结构.ppt
- 人教版第一章第一节1.1人口的数量变化ppt.ppt
- 人教版语文三年级第七单元.doc
- 人教版语文七年级下册 单元主题阅读(二) 家国情怀 (共22张PPT).ppt
- 人教版课件《 运动和力》复习课.ppt
- 人教版小学语文三年级上册《富饶的西沙群岛》PPT课件03.ppt
- 人教版语文七年级上册第四单元《走一步 再走一步》课件.ppt
- 人教版第四章第一节光的直线传播(公开课).ppt
- [中央]2023年中国电子学会招聘应届生笔试历年参考题库附带答案详解.docx
- [吉安]2023年江西吉安市青原区总工会招聘协理员笔试历年参考题库附带答案详解.docx
- [中央]中华预防医学会科普信息部工作人员招聘笔试历年参考题库附带答案详解.docx
- [保定]河北保定市第二医院招聘工作人员49人笔试历年参考题库附带答案详解.docx
- [南通]江苏南通市崇川区人民法院招聘专职人民调解员10人笔试历年参考题库附带答案详解.docx
- [厦门]2023年福建厦门市机关事务管理局非在编工作人员招聘笔试历年参考题库附带答案详解.docx
- [三明]2023年福建三明市尤溪县招聘小学幼儿园新任教师79人笔试历年参考题库附带答案详解.docx
- [哈尔滨]2023年黑龙江哈尔滨市木兰县调配事业单位工作人员笔试历年参考题库附带答案详解.docx
- [上海]2023年上海市气象局所属事业单位招聘笔试历年参考题库附带答案详解.docx
- [台州]2023年浙江台州椒江区招聘中小学教师40人笔试历年参考题库附带答案详解.docx
最近下载
- 广州城中村拆除方案.docx
- 【高中数学竞赛真题•强基计划真题考前适应性训练】 专题07 解析几何 真题专项训练(全国竞赛+强基计划专用)原卷版.docx VIP
- 木香化滞汤_嵩崖尊生卷七_方剂加减变化汇总.doc
- 2022年军队文职人员招聘(教育学)考试题库(完整版)-简答题库.docx
- 《老年人心理护理》ppt课件.pptx VIP
- 【高中数学竞赛真题•强基计划真题考前适应性训练】 专题16 其他竞赛综合 真题专项训练(全国竞赛+强基计划专用)解析版.docx VIP
- 统编版四年级下册语文1古诗词三首《四时田园杂兴》课件.pptx
- 【高中数学竞赛真题•强基计划真题考前适应性训练】 专题15 导数与极限 真题专项训练(全国竞赛+强基计划专用)解析版.docx VIP
- 《编钟的历史》课件.pptx
- 地震安全性评价管理条例.docx VIP
文档评论(0)