色综合图-色综合图片-色综合图片二区150p-色综合图区-玖玖国产精品视频-玖玖香蕉视频

您的位置:首頁技術(shù)文章
文章詳情頁

簡單的Java示例以14個線程運(yùn)行。為什么?

瀏覽:97日期:2024-05-06 14:46:16
如何解決簡單的Java示例以14個線程運(yùn)行。為什么??

默認(rèn)情況下,我的JVM(1.6.0_26)產(chǎn)生更多線程。大多數(shù)都具有漂亮的描述性名稱,以暗示其目的:

@H_404_2@'Attach Listener' daemon prio=10 tid=0x0000000041426800 nid=0x2fb9 waiting on condition [0x0000000000000000] java.lang.Thread.State: RUNNABLE'Low Memory Detector' daemon prio=10 tid=0x00007f512c07e800 nid=0x2fa3 runnable [0x0000000000000000] java.lang.Thread.State: RUNNABLE'C2 CompilerThread1' daemon prio=10 tid=0x00007f512c07b800 nid=0x2fa2 waiting on condition [0x0000000000000000] java.lang.Thread.State: RUNNABLE'C2 CompilerThread0' daemon prio=10 tid=0x00007f512c078800 nid=0x2fa1 waiting on condition [0x0000000000000000] java.lang.Thread.State: RUNNABLE'Signal dispatcher' daemon prio=10 tid=0x00007f512c076800 nid=0x2fa0 runnable [0x0000000000000000] java.lang.Thread.State: RUNNABLE'Finalizer' daemon prio=10 tid=0x00007f512c05a000 nid=0x2f9f in Object.wait() [0x00007f512b8f7000] java.lang.Thread.State: WAITING (on object monitor) at java.lang.Object.wait(Native Method) - waiting on <0x00000007c14b1300> (a java.lang.ref.ReferenceQueue$Lock) at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:118) - locked <0x00000007c14b1300> (a java.lang.ref.ReferenceQueue$Lock) at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:134) at java.lang.ref.Finalizer$FinalizerThread.run(Finalizer.java:159)'Reference Handler' daemon prio=10 tid=0x00007f512c058000 nid=0x2f9e in Object.wait() [0x00007f512b9f8000] java.lang.Thread.State: WAITING (on object monitor) at java.lang.Object.wait(Native Method) - waiting on <0x00000007c14b11d8> (a java.lang.ref.Reference$Lock) at java.lang.Object.wait(Object.java:485) at java.lang.ref.Reference$ReferenceHandler.run(Reference.java:116) - locked <0x00000007c14b11d8> (a java.lang.ref.Reference$Lock)'main' prio=10 tid=0x0000000041401800 nid=0x2f94 waiting on condition [0x00007f5135735000] java.lang.Thread.State: TIMED_WAITING (sleeping) at java.lang.Thread.sleep(Native Method) at Main.main(Main.java:5)'VM Thread' prio=10 tid=0x00007f512c051800 nid=0x2f9d runnable'GC task thread#0 (ParallelGC)' prio=10 tid=0x0000000041414800 nid=0x2f95 runnable'GC task thread#1 (ParallelGC)' prio=10 tid=0x00007f512c001000 nid=0x2f96 runnable'GC task thread#2 (ParallelGC)' prio=10 tid=0x00007f512c002800 nid=0x2f97 runnable'GC task thread#3 (ParallelGC)' prio=10 tid=0x00007f512c004800 nid=0x2f98 runnable'GC task thread#4 (ParallelGC)' prio=10 tid=0x00007f512c006800 nid=0x2f99 runnable'GC task thread#5 (ParallelGC)' prio=10 tid=0x00007f512c008000 nid=0x2f9a runnable'GC task thread#6 (ParallelGC)' prio=10 tid=0x00007f512c00a000 nid=0x2f9b runnable'GC task thread#7 (ParallelGC)' prio=10 tid=0x00007f512c00c000 nid=0x2f9c runnable'VM Periodic Task Thread' prio=10 tid=0x00007f512c089000 nid=0x2fa4 waiting on condition

顯然,大多數(shù)線程與內(nèi)存處理有關(guān):有8個垃圾收集器線程,外加低內(nèi)存檢測器。Finalizer和ReferenceHandler聽起來像他們也參與了內(nèi)存管理。

C2 CompilerThread0/1 幾乎可以肯定,它與即時編譯有關(guān)。

至于其余線程的確切目的,我不確定。

解決方法

以下簡單的Java代碼:

public class Main { public static void main(String[] args) throws InterruptedException {System.out.println('Start');Thread.sleep(5000);System.out.println('Done'); }}

使用14個線程運(yùn)行。我知道在后臺運(yùn)行一些GC線程,但是其他線程又有什么用?為什么會有這么多線程?我在使用Java 1.6.0_26的GentooLinux上。使用Eclipse的編譯器或javac進(jìn)行編譯沒有任何區(qū)別(在Eclipse的調(diào)試模式下運(yùn)行它會增加3個線程,但這可能是合理的)。

標(biāo)簽: java
相關(guān)文章:
主站蜘蛛池模板: 免费又黄又爽又猛大片午夜 | 国产亚洲精品久久精品6 | 男同黄网站| 久久久免费的精品 | 中文字幕亚洲精品 | 美女视频全部免费 | 飘花国产午夜精品不卡 | 手机看片神马午夜片 | 欧美亚洲视频在线观看 | 欧美日韩第二页 | 国产精品欧美亚洲韩国日本不卡 | 长腿嫩模打开双腿呻吟 | 国产系列在线播放 | 久久视精品 | 国产自愉自愉全免费高清 | 国产午夜精品理论片 | 国产精品黄在线观看观看 | 亚洲精品国产综合99久久一区 | 久香草视频在线观看免费 | 国产一级做a爰片... | 国产午夜精品久久理论片小说 | 亚洲在线观看网站 | 免费观看亚洲 | 成年18网站免费视频网站 | 手机看片在线 | 日韩午夜片 | 一级一片一_级一片一 | 免费一级肉体全黄毛片高清 | 国产日韩精品欧美一区 | 女人张开腿让男人桶视频免费大全 | 久久综合久久久久 | 一区二区三区中文 | 在线中文字幕精品第5页 | 欧洲97色综合成人网 | 国产亚洲精品片a77777 | 久久久精品国产 | 欧美中文一区 | 在线观看香蕉免费啪在线观看 | 18岁禁黄色| 97se狠狠狠狠狠亚洲综合网 | 久久国产香蕉 |