Java之多線程

來源:互聯網
上載者:User

keywords: Thread, Runnable, synchronized

現在的CPU很強悍,一般都是多個核心,並使用超執行緒技術,讓一個核心能並行運行多個線程。在處理大資料時,多線程會大大加快資料處理速度,多線程編程也日顯重要。Java中每個程式運行時都有一個主線程main在跑。

建立線程的兩種方式:繼承Thread和實現Runnable

class A extends Thread

Thread implements Runnable

直接調用run()方法不算是多線程,只是運行對象的方法而已。建立多線程需要叫用作業系統資源-CPU。在Thread的start()方法中就會調用native的start()來建立新線程(native說明:http://blog.csdn.net/fsz521/article/details/8748562)。

例:多線程式控制制順序執行:三個線程順序輸出其id三次

輸出:012012012

package multiThread;import java.util.concurrent.ExecutorService;import java.util.concurrent.Executors;class TestThreadMethod extends Thread {public TestThreadMethod(String name) {super(name);}public void run() {System.out.print(this.getName());}}public class TestThread {public static void main(String[] args) {TestThreadMethod ttm0 = new TestThreadMethod("0");TestThreadMethod ttm1 = new TestThreadMethod("1");TestThreadMethod ttm2 = new TestThreadMethod("2");ExecutorService exec = Executors.newSingleThreadExecutor();for (int i = 0; i < 3; i++) {exec.execute(ttm0); exec.execute(ttm1);exec.execute(ttm2);}exec.shutdown();}}

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.