Java實(shí)現(xiàn)在不同線程中運(yùn)行的代碼實(shí)例
本文實(shí)例講述了Java實(shí)現(xiàn)在不同線程中運(yùn)行的代碼。分享給大家供大家參考,具體如下:
start()方法開始為一個(gè)線程分配CPU時(shí)間,這導(dǎo)致對(duì)run()方法的調(diào)用。
代碼1
package Threads; /** * Created by Frank */ public class ThreadsDemo1 extends Thread { private String msg; private int count; public ThreadsDemo1(final String msg, int n) { this.msg = msg; count = n; setName(msg + " runner Thread"); } public void run() { while (count-- > 0) { System.out.println(msg); try { Thread.sleep(100); } catch (InterruptedException e) { return; } } System.out.println(msg + " all done."); } public static void main(String[] args) { new ThreadsDemo1("Hello from X", 10).start(); new ThreadsDemo1("Hello from Y", 15).start(); } }
代碼2:
package Threads; /** * Created by Frank */ public class ThreadsDemo2 implements Runnable { private String msg; private Thread t; private int count; public static void main(String[] args) { new ThreadsDemo2("Hello from X", 10); new ThreadsDemo2("Hello from Y", 15); } public ThreadsDemo2(String m, int n) { this.msg = m; count = n; t = new Thread(this); t.setName(msg + "runner Thread"); t.start(); } public void run() { while (count-- > 0) { System.out.println(msg); try { Thread.sleep(100); } catch (InterruptedException e) { return; } } System.out.println(msg + " all done."); } }
代碼3:
package Threads; /** * Created by Frank */ public class ThreadsDemo3 { private int count; public static void main(String[] args) { new ThreadsDemo3("Hello from X", 10); new ThreadsDemo3("Hello from Y", 15); } public ThreadsDemo3(final String msg, int n) { this.count = n; Thread t = new Thread(new Runnable() { public void run() { while (count-- > 0) { System.out.println(msg); try { Thread.sleep(100); } catch (InterruptedException e) { return; } } System.out.println(msg + " all done."); } }); t.setName(msg + " runner Thread"); t.start(); } }
eclipse運(yùn)行結(jié)果如下:
希望本文所述對(duì)大家java程序設(shè)計(jì)有所幫助。
- java線程池:獲取運(yùn)行線程數(shù)并控制線程啟動(dòng)速度的方法
- Java并發(fā)編程示例(七):守護(hù)線程的創(chuàng)建和運(yùn)行
- Java實(shí)現(xiàn)終止線程池中正在運(yùn)行的定時(shí)任務(wù)
- Java利用future及時(shí)獲取多線程運(yùn)行結(jié)果
- java控制線程運(yùn)行
- 創(chuàng)建并運(yùn)行一個(gè)java線程方法介紹
- Java實(shí)現(xiàn)的兩個(gè)線程同時(shí)運(yùn)行案例
- java 實(shí)現(xiàn)線程同步的方式有哪些
- Java多線程的用法詳解
- 15個(gè)高級(jí)Java多線程面試題及回答
- Java線程協(xié)調(diào)運(yùn)行操作實(shí)例詳解
相關(guān)文章
Spring的嵌套事務(wù)(Propagation.NESTED)到底是個(gè)啥案例代碼講解
SavePoint是數(shù)據(jù)庫(kù)事務(wù)中的一個(gè)概念,?可以將整個(gè)事務(wù)切割為不同的小事務(wù),可以選擇將狀態(tài)回滾到某個(gè)小事務(wù)發(fā)生時(shí)的樣子,本文通過(guò)案例代碼講解Spring的嵌套事務(wù)(Propagation.NESTED)到底是個(gè)啥,感興趣的朋友跟隨小編一起看看吧2023-01-01Java?Apache?common-pool對(duì)象池介紹
這篇文章主要介紹了Java Apache?common-pool對(duì)象池介紹,文章通過(guò)圍繞主題展開詳細(xì)的內(nèi)容介紹,具有一定的參考價(jià)值,感興趣的小伙伴可以參考一下2022-09-09關(guān)于線程池異步線程中再次獲取線程池資源的問(wèn)題
這篇文章主要介紹了關(guān)于線程池異步線程中再次獲取線程池資源的問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2024-08-08rabbitmq中routingkey的作用說(shuō)明
這篇文章主要介紹了rabbitmq中routingkey的作用說(shuō)明,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2021-06-06基于Spring-AOP實(shí)現(xiàn)自定義分片工具詳解
隨著數(shù)據(jù)量的增長(zhǎng),在與其他系統(tǒng)交互時(shí),批量接口會(huì)出現(xiàn)超時(shí)現(xiàn)象,發(fā)現(xiàn)原批量接口在實(shí)現(xiàn)時(shí),沒(méi)有做分片處理。由于與其他系統(tǒng)交互比較多,一個(gè)一個(gè)接口去做分片優(yōu)化,改動(dòng)量較大,所以考慮通過(guò)AOP解決此問(wèn)題,感興趣的可以了解一下2022-11-11Java調(diào)用商品詳情API的項(xiàng)目實(shí)踐
在現(xiàn)代電子商務(wù)網(wǎng)站中,商品詳情API是一個(gè)重要的組件,本文就來(lái)介紹一下Java調(diào)用商品詳情API的項(xiàng)目實(shí)踐,具有一定的參考價(jià)值,感興趣的可以了解一下2023-11-11spring mvc中的@ModelAttribute注解示例介紹
在Spring mvc中,注解@ModelAttribute是一個(gè)非常常用的注解,下面這篇文章主要給大家介紹了關(guān)于spring mvc中@ModelAttribute注解的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),需要的朋友可以參考下。2017-09-09