最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

idea中斷點類型之All和Thread的區(qū)別介紹

 更新時間:2022年03月17日 16:38:06   作者:我叫985  
使用all模式對于程序中含有多個線程來說,會將多個線程都阻塞在斷點,此時所有的線程都執(zhí)行到此處,在最后一個線程執(zhí)行到此處是會發(fā)生暫停,在這之前的線程會繼續(xù)執(zhí)行到任意位置,本文給大家詳細介紹下idea中斷點類型之All和Thread的區(qū)別,感興趣的朋友一起看看吧

All模式

  •  所有的線程都要在當前位置被阻塞,誰先來就先阻塞誰,發(fā)生阻塞時其他的線程當前時刻執(zhí)行到哪里就在哪里進行原地等待。
  • 如果此時按下一步F6,那所有的線程都通過阻塞代碼如果此時按恢復程序運行F8,那么當前線程通過阻塞代碼,等待下一個線程的到來,也是誰先來阻塞誰,發(fā)生阻塞時其他的線程當前時刻執(zhí)行到哪里就在哪里進行原地等待。
public class ThreadAndAllBreakApplication {

    public static void main(String[] args) {
        ThreadTest thread1 = new ThreadTest();
        thread1.setName("線程A");
        thread1.start();
        ThreadTest thread2 = new ThreadTest();
        thread2.setName("線程B");
        thread2.start();
        ThreadTest thread3 = new ThreadTest();
        thread3.setName("線程C");
        thread3.start();
    }
}
class ThreadTest extends Thread {
    @Override
    public void run() {
        System.out.println(Thread.currentThread().getName() + ": 1");
        try {
            long millis = RandomUtil.randomLong(100, 500);
            System.out.println(Thread.currentThread().getName() + "睡眠: " + millis);
            Thread.sleep(millis);
        } catch (InterruptedException e) {
            e.printStackTrace();
        }
        System.out.println(Thread.currentThread().getName() + ": 2");
        System.out.println(Thread.currentThread().getName() + ": 3");
        System.out.println(Thread.currentThread().getName() + ": 設(shè)置斷點的前一行代碼"); // 當前行設(shè)置斷點
        System.out.println(Thread.currentThread().getName() + ": 4");
        System.out.println(Thread.currentThread().getName() + ": end");

線程A: 1
線程C: 1
線程B: 1
線程C睡眠: 283
線程A睡眠: 340
線程B睡眠: 127
線程B: 2
線程B: 3
線程B: 設(shè)置斷點的前一行代碼 // B來到了這里,此時其他線程A、B在原地等待,即A、B都在睡眠。
線程A: 2 // A之前執(zhí)行到睡眠,現(xiàn)在執(zhí)行2
線程A: 3
線程A: 設(shè)置斷點的前一行代碼 // A來到了這里,此時其他線程B、C在原地等待
線程C: 2 // c之前執(zhí)行到睡眠,現(xiàn)在執(zhí)行2
線程C: 3
線程A: 4
線程B: 4
線程A: end
線程C: 設(shè)置斷點的前一行代碼 // C來到了這里,如果不放行斷點,B一直也不會輸出end,會在原地等待(這里證明了當某個線程被All斷點阻塞后,其他線程會在原地等待)
線程B: end
線程C: 4
線程C: end

Thread模式

所有的線程都會運行到斷點處然后阻塞

  • 如果此時按下一步F6,那當前的線程都通過阻塞代碼,其他線程不動。
  • 如果此時按恢復程序運行F8,那么當前線程通過阻塞代碼,并自動切換到下一個阻塞線程進行調(diào)試。

在這里插入圖片描述

到此這篇關(guān)于idea中斷點類型:All和Thread的區(qū)別的文章就介紹到這了,更多相關(guān)idea 斷點All和Thread內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Spring,hibernate,struts經(jīng)典面試筆試題(含答案)

    Spring,hibernate,struts經(jīng)典面試筆試題(含答案)

    這篇文章主要介紹了Spring,hibernate,struts經(jīng)典面試筆試題極其參考含答案,涉及SSH基本概念,原理與使用技巧,需要的朋友可以參考下
    2016-03-03
  • Java實現(xiàn)對稱加密DES和AES的示例代碼

    Java實現(xiàn)對稱加密DES和AES的示例代碼

    這篇文章主要介紹了如何使用Java實現(xiàn)采用對稱密碼算法的應用軟件,所用算法包括DES算法和AES算法,文中的示例代碼講解詳細,感興趣的可以了解一下
    2023-04-04
  • Spring調(diào)度框架EnableScheduling&Scheduled源碼解析

    Spring調(diào)度框架EnableScheduling&Scheduled源碼解析

    這篇文章主要介紹了Spring調(diào)度框架EnableScheduling&Scheduled源碼解析,@EnableScheduling&Scheduled定時調(diào)度框架,本著不僅知其然還要知其所以然的指導思想,下面對該調(diào)度框架進行源碼解析,以便更好的理解其執(zhí)行過程,需要的朋友可以參考下
    2024-01-01
  • Java實現(xiàn)斗地主案例

    Java實現(xiàn)斗地主案例

    這篇文章主要為大家詳細介紹了Java實現(xiàn)斗地主案例,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2020-04-04
  • 最新評論

    海林市| 霸州市| 奉化市| 栾城县| 长治县| 启东市| 济阳县| 紫金县| 金川县| 同德县| 加查县| 民乐县| 东光县| 隆子县| 四会市| 江山市| 财经| 图片| 沙坪坝区| 弋阳县| 洛宁县| 锡林浩特市| 伊宁市| 隆回县| 南和县| 西吉县| 洞口县| 晋城| 织金县| 滨海县| 德钦县| 吐鲁番市| 平乡县| 宁津县| 吕梁市| 大邑县| 托里县| 永和县| 利津县| 新邵县| 炉霍县|