當前位置:成語大全網 - 書法字典 - Java創建多線程

Java創建多線程

Java多線程的同步依賴於對象鎖定機制,這需要我們不斷學習相關問題。下面我們來詳細了解壹下如何更好地利用具體內容。synchronized關鍵字的背後是利用阻塞來實現對* * *資源的互斥訪問。

我們用壹個簡單的例子做個對比分析。例子的任務很簡單,就是創建10個線程,每個線程打印100個從0到99的數字。我們希望線程不會亂序打印,而是按順序打印。

我們來看第壹段代碼。這裏我們在run()方法中加入synchronized關鍵字,希望能夠互斥訪問run方法,但是結果並不像我們希望的那樣,因為這裏的synchronized鎖是this對象,也就是當前運行的線程對象本身。Java多線程代碼中創建的線程有10個,每個線程都持有這個對象的對象鎖,無法實現線程的同步。

Java多線程代碼如下

1 . package com . vista;

2 .類MyThread實現java.lang.Runnable

3.{

4.private int threadId

5 .公共MyThread(int id)

6.{

7 . this . threadid = id;

8.}

9.@覆蓋

10 .公共同步無效運行()

11.{

12 . for(int I = 0;我& lt100;++i)

13.{

14.System.out.println("線程ID:"+this . threadid+":"+I);

15.}

16.}

17.}

18 .公共類ThreadDemo

19.{

20./**

21.* @param args

22.* @throws中斷異常

23.*/

公共靜態void main(String[] args)拋出InterruptedException

25.{

26 . for(int I = 0;我& lt10;++i)

27.{

28 .新線索(新流言(壹))。start();

29.thread . sleep(1);

30.}

31.}

32.}

以上是Java多線程的詳細代碼介紹。