日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > java >内容正文

java

[Java] 实现多线程的两种方法

發布時間:2023/12/15 java 36 豆豆
生活随笔 收集整理的這篇文章主要介紹了 [Java] 实现多线程的两种方法 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

版權聲明:請尊重個人勞動成果,轉載注明出處,謝謝!

Java提供了兩種創建線程方法:

  • 通過實現Runable接口;

  • 通過繼承Thread類本身。

1 .聲明實現 Runnable 接口的類,該類然后實現 run 方法。然后可以分配該類的實例,在創建 Thread 時作為一個參數來傳遞并啟動。例如,計算大于某一規定值的質數的線程可以寫成:

class PrimeRun implements Runnable {long minPrime;PrimeRun(long minPrime) {this.minPrime = minPrime;}public void run() {// compute primes larger than minPrime. . .}}

然后,下列代碼會創建并啟動一個線程:

PrimeRun p = new PrimeRun(143);new Thread(p).start();

2.將類聲明為 Thread 的子類。該子類應重寫 Thread 類的 run 方法。接下來可以分配并啟動該子類的實例。

class PrimeThread extends Thread {long minPrime;PrimeThread(long minPrime) {this.minPrime = minPrime;}public void run() {// compute primes larger than minPrime. . .}}

然后,下列代碼會創建并啟動一個線程:

PrimeThread p = new PrimeThread(143);p.start();

  當 Java 虛擬機啟動時,通常都會有單個非守護線程(它通常會調用某個指定類的 main 方法)。Java 虛擬機會繼續執行線程,直到下列任一情況出現時為止:?

  • 調用了 Runtime 類的 exit 方法,并且安全管理器允許退出操作發生。

  • 非守護線程的所有線程都已停止運行,無論是通過從對 run 方法的調用中返回,還是通過拋出一個傳播到 run 方法之外的異常。

3.使用和區別

  Runable源碼:?

public interface Runnable {/*** When an object implementing interface <code>Runnable</code> is used* to create a thread, starting the thread causes the object's* <code>run</code> method to be called in that separately executing* thread.* <p>* The general contract of the method <code>run</code> is that it may* take any action whatsoever.** @see java.lang.Thread#run()*/public abstract void run(); }


  Thread 類實現了 Runnable。激活的意思是說某個線程已啟動并且尚未停止。此外,Runnable 為非 Thread 子類的類提供了一種激活方式。通過實例化某個 Thread 實例并將自身作為運行目標,就可以運行實現 Runnable 的類而無需創建 Thread 的子類。大多數情況下,如果只想重寫 run() 方法,而不重寫其他 Thread 方法,那么應使用 Runnable 接口。這很重要,因為除非程序員打算修改或增強類的基本行為,否則不應為該類創建子類

  繼承Thread類實現多線程,要求放入多線程中的類不能繼承其他類(Java的單繼承特性),如果需要請用 Runnable 實現(接口可以多實現并不影響繼承其他類)。?
?
一個實現Runnable接口的類可以放在多個線程中執行,多個線程可以去執行同一資源;而繼承Thread只能實現多個線程分別去處理自己的資源。(通過Runnable創建的多個線程可以由編程人員傳入同一個Runnable對象,即執行同一個run方法,而通過Thread創建的多線程它們運行的都是自己的run方法)。






總結

以上是生活随笔為你收集整理的[Java] 实现多线程的两种方法的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 韩国三级视频在线 | 国内精品偷拍视频 | 亚洲国产精品激情在线观看 | 鲁丝片一区二区三区 | 久久国产视频精品 | 国产粉嫩呻吟一区二区三区 | 天堂岛av | 日韩亚洲欧美一区二区三区 | 国产高清视频一区二区 | 热久久精品免费视频 | av资源免费观看 | 欧美天堂在线 | yw视频在线观看 | 日韩免费av一区二区 | 91在线视频免费观看 | 久久久久久电影 | 亚洲图片视频小说 | 亚洲aa | 日韩精品久 | 一区二区国产精品视频 | 极品淫少妇 | 噜噜av| 黄色高清无遮挡 | 91爱爱.com | 中文字幕avav | av夜夜| 亚洲熟妇无码乱子av电影 | 国产精品久久久久久亚洲色 | 国产高潮视频在线观看 | 欧美激情久久久久 | 亚洲13p| 国产 日韩 欧美 综合 | 超碰加勒比| 久久免费电影 | 在线观看的毛片 | 三级黄色小视频 | 亚欧日韩av | 久久最新免费视频 | 无码精品在线视频 | 中文字幕第十一页 | 成人涩涩软件 | 激情六月婷 | 免费无码不卡视频在线观看 | 91成人国产 | 亚洲欧美日韩中文字幕在线观看 | 五月天国产精品 | a v在线视频 | av动漫免费观看 | 中文字幕偷拍 | 欧美在线一区二区 | 超碰按摩| 四虎福利 | 综合网在线视频 | 国产夫妻av | 一二三区在线观看 | 亚洲社区在线观看 | www.欧美精品| 中文字幕一区二区三区5566 | 亚洲天天视频 | 国产精品电影 | 美女黄色免费网站 | av先锋资源| 亚洲三级视频 | 亚洲av乱码久久精品蜜桃 | 3o一40一50一6o女人毛片 | www.色妞| 国产性xxx | 国产亚洲一区在线 | 一区二区内射 | 成人一级免费视频 | 狠狠的日| 久久精品国产亚洲av成人 | 免费在线看a | 中文字幕一区二区三区精彩视频 | 永久免费的网站入口 | 国产v亚洲v天堂无码久久久 | 免费高清欧美大片在线观看 | 在线看av网址| 无码日韩人妻精品久久蜜桃 | 丝袜中文字幕 | 美女久久久久久久久 | 国产一道本 | 亚洲你懂得 | 久热精品在线 | 亚洲欧洲视频 | 日韩中文字幕有码 | av动漫在线免费观看 | 国产深喉视频一区二区 | 超碰在线最新 | 欧美日韩一区二区三区四区五区 | 一级伦理农村妇女愉情 | 国产精品理论片在线观看 | 欧美成人区 | 日韩精品中文字幕在线观看 | 欧美有码在线观看 | 欧美日韩中文字幕视频 | 亚洲精品乱码久久久久久按摩观 | 亚洲欧美另类日本 | 我的丝袜美腿尤物麻麻 |