這篇文章主要講解了“Java線程的創(chuàng)建方法”,文中的講解內(nèi)容簡(jiǎn)單清晰,易于學(xué)習(xí)與理解,下面請(qǐng)大家跟著小編的思路慢慢深入,一起來研究和學(xué)習(xí)“Java線程的創(chuàng)建方法”吧!
多線程指的是一個(gè)程序運(yùn)行時(shí),會(huì)包含多個(gè)線程同時(shí)進(jìn)行。
Java創(chuàng)建線程有三種基本的方法,分別是繼承Thread類,實(shí)現(xiàn)Runnable接口(推薦的實(shí)現(xiàn)方式),實(shí)現(xiàn)Callable接口實(shí)現(xiàn)Java多線程。
1. 繼承Thread類,然后重寫Thread 的run()方法,基本語法格式為public MyThread extends Thread { @Override public void run() { // 需要在線程中運(yùn)行的邏輯代碼塊 } }, 創(chuàng)建線程具體方法為 MyThread myThread = new MyThread(),創(chuàng)建好線程之后,需要調(diào)用myThread.start()方法啟動(dòng)線程,之后run()方法里面的邏輯才可以在線程中運(yùn)行,如果不使用start()方法啟動(dòng)線程,而是直接使用線程對(duì)象調(diào)用myThread.run()方法,則run()方法里面的程序不屬于子線程,還是屬于主線程的;當(dāng)run()方法執(zhí)行結(jié)束之后,線程結(jié)束被銷毀。同一個(gè)線程對(duì)象不可以start()多次,無論這個(gè)線程當(dāng)前處于什么狀態(tài)都是不可以重新start()的。
2. 重寫Runnable接口,重寫接口里面的run()方法,實(shí)現(xiàn)方式為public MyThread implements Runnable { @Override public void run() { // 需要在線程中運(yùn)行的邏輯代碼塊 }},之后的實(shí)現(xiàn)和繼承Thread類似,都是使用線程對(duì)象的start()方法進(jìn)行啟動(dòng),但是一般推薦這種實(shí)現(xiàn)方式,因?yàn)镴ava是屬于單繼承的,如果繼承了Thread類,就不可以繼承其他的類,會(huì)有一定的局限性。
3. 實(shí)現(xiàn)Callable接口實(shí)現(xiàn)多線程,實(shí)現(xiàn)該接口之后,需要重寫call()方法, 實(shí)現(xiàn)方式為public class CallableDemo implements Callable { @Override public String call() throws Exception { // 需要都在線程中運(yùn)行的邏輯代碼塊 return “線程結(jié)束返回的信息” } },call()方法會(huì)有返回值,可以返回線程執(zhí)行結(jié)束之后需要返回的一些信息,并且可以拋出一些異常信息,創(chuàng)建線程的方法可以new一個(gè)Thread并且傳入一個(gè)FutureTask的對(duì)象,之后調(diào)用線程對(duì)象的start()方法啟動(dòng)線程。當(dāng)線程執(zhí)行完成之后,可以使用FutureTask對(duì)象的get()方法獲取到線程的返回值。
在java中創(chuàng)建線程時(shí)可以給線程設(shè)置自己的名稱,使用setName( name )進(jìn)行設(shè)置,通過設(shè)置名稱,可以很好的區(qū)分每一個(gè)線程。也可以通過setPriority( priority )設(shè)置線程的優(yōu)先級(jí),優(yōu)先級(jí)越高,所獲得的CPU資源越多,線程執(zhí)行的幾率就越大。線程的優(yōu)先級(jí)為1-10,超出這個(gè)范圍,程序則會(huì)拋出異常,默認(rèn)值為5。可以通過isAlive()方法判斷線程是否處于活躍狀態(tài)。
感謝各位的閱讀,以上就是“Java線程的創(chuàng)建方法”的內(nèi)容了,經(jīng)過本文的學(xué)習(xí)后,相信大家對(duì)Java線程的創(chuàng)建方法這一問題有了更深刻的體會(huì),具體使用情況還需要大家實(shí)踐驗(yàn)證。這里是創(chuàng)新互聯(lián),小編將為大家推送更多相關(guān)知識(shí)點(diǎn)的文章,歡迎關(guān)注!
文章名稱:Java線程的創(chuàng)建方法-創(chuàng)新互聯(lián)
文章地址:http://www.chinadenli.net/article30/dsodpo.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供Google、微信公眾號(hào)、建站公司、企業(yè)建站、App開發(fā)、網(wǎng)站排名
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容