摘要:今天在和同事討論線程說(shuō)到了這個(gè)我就實(shí)現(xiàn)了一把直接貼代碼打印偶數(shù)的線程打印奇數(shù)的線程輸出結(jié)果打印奇數(shù)的線程打印偶數(shù)的線程打印奇數(shù)的線程打印偶數(shù)的線程打印奇數(shù)的線程打印偶數(shù)的線程打印奇數(shù)的線程打印偶數(shù)的線程打印奇數(shù)的線程如有不對(duì)的地方,還請(qǐng)指教
今天在和同事討論線程說(shuō)到了這個(gè)我就實(shí)現(xiàn)了一把 直接貼代碼
public class Demo2 { private static volatile int i = 1; public static void main(String[] args) throws Exception { final Object obj = new Object(); Runnable runnable = new Runnable() { @Override public void run() { synchronized (obj) { for (; i < 10; ) { System.out.println(Thread.currentThread().getName() + " " + (i++)); try { obj.notifyAll(); obj.wait(); } catch (InterruptedException e) { e.printStackTrace(); } } obj.notifyAll(); } } }; Thread t1 = new Thread(runnable, "打印偶數(shù)的線程 "); Thread t2 = new Thread(runnable, "打印奇數(shù)的線程 "); t2.start(); t1.start(); } }
輸出結(jié)果
打印奇數(shù)的線程 1
打印偶數(shù)的線程 2
打印奇數(shù)的線程 3
打印偶數(shù)的線程 4
打印奇數(shù)的線程 5
打印偶數(shù)的線程 6
打印奇數(shù)的線程 7
打印偶數(shù)的線程 8
打印奇數(shù)的線程 9
如有不對(duì)的地方,還請(qǐng)指教
原文地址 https://www.51csdn.cn/article...
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://m.hztianpu.com/yun/75139.html
此專欄文章是對(duì)力扣上算法題目各種方法的總結(jié)和歸納, 整理出最重要的思路和知識(shí)重點(diǎn)并以思維導(dǎo)圖形式呈現(xiàn), 當(dāng)然也會(huì)加上我對(duì)導(dǎo)圖的詳解. 目的是為了更方便快捷的記憶和回憶算法重點(diǎn)(不用每次都重復(fù)看題解), 畢竟算法不是做了一遍就能完全記住的. 所以本文適合已經(jīng)知道解題思路和方法, 想進(jìn)一步加強(qiáng)理解和記憶的朋友, 并不適合第一次接觸此題的朋友(可以根據(jù)題號(hào)先去力扣看看官方題解, 然后再看本文內(nèi)容). 關(guān)...
摘要:使當(dāng)前線程休眠,不可調(diào)度。這三種情況下會(huì)恢復(fù)其它線程調(diào)用了,當(dāng)前線程恰好被選中了恢復(fù)執(zhí)行其它線程調(diào)用了假醒。 考慮一個(gè)場(chǎng)景,輪流打印0-100以內(nèi)的技術(shù)和偶數(shù)。通過(guò)使用 synchronize 的 wait,notify機(jī)制就可以實(shí)現(xiàn),核心思路如下: 使用兩個(gè)線程,一個(gè)打印奇數(shù),一個(gè)打印偶數(shù)。這兩個(gè)線程會(huì)共享一個(gè)數(shù)據(jù),數(shù)據(jù)每次自增,當(dāng)打印奇數(shù)的線程發(fā)現(xiàn)當(dāng)前要打印的數(shù)字不是奇數(shù)時(shí),執(zhí)行...
摘要:重溫一個(gè)面試題內(nèi)容數(shù)組內(nèi)容為數(shù)組內(nèi)容為個(gè)英文字母,使用兩個(gè)線程分別輸入兩個(gè)數(shù)組,打印內(nèi)容為這樣的規(guī)律提取一下核心內(nèi)容,去除次要內(nèi)容兩個(gè)線程需要交替執(zhí)行,打印數(shù)字的線程需要先執(zhí)行,數(shù)組打印完畢后線程需要結(jié)束。 一道多線程面試題引起的自我救贖 近日去一個(gè)知名互聯(lián)網(wǎng)企業(yè)參加面試,之前準(zhǔn)備多多信心滿滿,但是面試一開(kāi)始就是一道不起眼的編程題 數(shù)組A內(nèi)容為 1,2,3,4...52 ,數(shù)組B內(nèi)容...
摘要:前言開(kāi)發(fā)中不免會(huì)遇到需要所有子線程執(zhí)行完畢通知主線程處理某些邏輯的場(chǎng)景??梢圆捎弥袛嗑€程的方式來(lái)通信,調(diào)用了方法其實(shí)就是將中的一個(gè)標(biāo)志屬性置為了。實(shí)際開(kāi)發(fā)中可以靈活根據(jù)需求選擇最適合的線程通信方式。 showImg(https://segmentfault.com/img/remote/1460000013842442); 前言 開(kāi)發(fā)中不免會(huì)遇到需要所有子線程執(zhí)行完畢通知主線程處理某些...
摘要:位算法的效率有多快我就不說(shuō),不信你可以去用億個(gè)數(shù)據(jù)模擬一下,今天給大家講一講位運(yùn)算的一些經(jīng)典例子。不過(guò),最重要的不是看懂了這些例子就好,而是要在以后多去運(yùn)用位運(yùn)算這些技巧,當(dāng)然,采用位運(yùn)算,也是可以裝逼的,不信,你往下看。位算法的效率有多快我就不說(shuō),不信你可以去用 10 億個(gè)數(shù)據(jù)模擬一下,今天給大家講一講位運(yùn)算的一些經(jīng)典例子。不過(guò),最重要的不是看懂了這些例子就好,而是要在以后多去運(yùn)用位運(yùn)算這...
閱讀 3304·2021-11-22 12:07
閱讀 1971·2021-10-12 10:11
閱讀 1099·2019-08-30 15:44
閱讀 3003·2019-08-30 12:45
閱讀 2301·2019-08-29 16:41
閱讀 1688·2019-08-29 16:35
閱讀 2718·2019-08-29 12:57
閱讀 1213·2019-08-26 13:51