真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

為什么要讓run()方法自動開啟-創(chuàng)新互聯(lián)

本篇內(nèi)容主要講解“為什么要讓run()方法自動開啟”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實用性強(qiáng)。下面就讓小編來帶大家學(xué)習(xí)“為什么要讓run()方法自動開啟”吧!

創(chuàng)新互聯(lián)主要從事成都網(wǎng)站設(shè)計、做網(wǎng)站、網(wǎng)頁設(shè)計、企業(yè)做網(wǎng)站、公司建網(wǎng)站等業(yè)務(wù)。立足成都服務(wù)君山,十年網(wǎng)站建設(shè)經(jīng)驗,價格優(yōu)惠、服務(wù)專業(yè),歡迎來電咨詢建站服務(wù):18980820575

  cpu有隨機(jī)性,線程搶到cpu,才能干活,所以run()方法必須通過strat()方法自動啟動,這樣cpu就獲得了一個信號,知道該線程可以搶占cpu資源;

手動運行垃圾回收器

原理:當(dāng)執(zhí)行g(shù)c是,會觸發(fā)垃圾回收機(jī)制,開啟垃圾回收線程,執(zhí)行finalize方法

cpu的特性:多個線程之間是搶cpu的關(guān)系,cpu有隨機(jī)性

主函數(shù)結(jié)束,主任務(wù)區(qū)結(jié)束,主線程隨著任務(wù)的結(jié)束而結(jié)束,線程隨著任務(wù)的開始而開始

創(chuàng)建線程

默認(rèn)情況下,主線程和垃圾回收線程都是由系統(tǒng)創(chuàng)建

①用Thread創(chuàng)建線程對象

Thread thread1=new Thread();  //只是創(chuàng)建Thread對象

thread1.start();   //開啟線程

Thread類里的run()方法默認(rèn)是空的,所以start()方法執(zhí)行結(jié)果

所以需要繼承Thread類 重寫run()方法

若run()方法直接被手動調(diào)用,run()對應(yīng)的線程跟調(diào)用該方法所在的線程對應(yīng)

Thread類實現(xiàn)了Runnable接口,Runnable接口里面只有run()方法,Thread類里實現(xiàn)的run()方法也只是空方法體,需要被繼承去重寫

創(chuàng)建一個A類實現(xiàn)Runnable接口,重寫run()方法

A a=new A();

Thread to=new Thread(A);

to.start();

給某個方法的線程沖突部分加鎖

鎖的條件

①鎖必須是對象

②要被所有的線程共享

同步代碼塊

synchronized(this){代碼塊}

同步函數(shù)

非靜態(tài)  public synchronized void xxx(){}   //默認(rèn)的鎖是this  synchronized(this)

靜態(tài) public synchronized static void xxx(){}  //默認(rèn)的鎖是當(dāng)前類的字節(jié)碼文件   synchronized(xx.class)

notify(終止線程休眠)     wait(線程休眠,不可以搶占cpu)

wait()-->必須在同步環(huán)境中使用,必須使用鎖調(diào)用,執(zhí)行這行代碼,對應(yīng)的是哪個線程,就

notify()-->喚醒的是同一把鎖下的線程,

Lock(顯示同步) 替換 Synchronized(隱式同步)

//創(chuàng)建鎖對象 Lock lock=new ReentrantLock();

//用于生產(chǎn)任務(wù)的Condition

Condition proCon = lock.newCondition();

//用于結(jié)束任務(wù)的condition

Condition conCon = lock.newCondition();

//開啟鎖

lock.lock();

proCon.await();

conCon.signal();

conCon.await();

proCon.signal();

//關(guān)閉鎖

lock.unlock();

守護(hù)線程

當(dāng)程序調(diào)用setDaemon方法時,并且將參數(shù)設(shè)置成true,當(dāng)前線程就變成了了守護(hù)線程,只要主線程結(jié)束,該守護(hù)線程就會結(jié)束,這個方法一定要在start前調(diào)用

join()方法,優(yōu)先級高于主線程,主線程會等當(dāng)前的線程執(zhí)行完后再去執(zhí)行;該方法是在start之后。

到此,相信大家對“為什么要讓run()方法自動開啟”有了更深的了解,不妨來實際操作一番吧!這里是創(chuàng)新互聯(lián)網(wǎng)站,更多相關(guān)內(nèi)容可以進(jìn)入相關(guān)頻道進(jìn)行查詢,關(guān)注我們,繼續(xù)學(xué)習(xí)!


新聞標(biāo)題:為什么要讓run()方法自動開啟-創(chuàng)新互聯(lián)
瀏覽地址:http://weahome.cn/article/coocoj.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部