java的多線程機制(文字描述區別)

來源:互聯網
上載者:User

1.簡述並區分程式、進程和線程三個概念。

程式是為完成特定任務、用某種語言編寫的一組指令的集合。指一段靜態代碼。
進程是程式的一次執行過程,是系統進行調度和資源分派的一個獨立單位。

 線程是比進程更小的執行單位。
一個進程在其執行過程中,可以產生多個線程,形成多條執行線索。
每個線程也有它自身的產生、存在和消亡的過程,也是一個動態概念。
一個線程有它自己的入口和出口,以及一個順序執行的序列
線程不能獨立存在,必須存在於進程中。
線程 — 輕量級的進程

 

 2.線程有哪幾個基本的狀態。Java中線程調度遵循何種原則。

答:線程與進程都是順序執行的指令序列,但線程和進程不同。對於進程來說,子進程與父進程有不同的代碼和資料空間;但是多個線程則共用資料空間,每個線程都有自己的執行堆棧和程式計數器作為其執行的上下文。線程的基本狀態有建立、就緒、運行、阻塞、死亡。線程調度安照線程的優先順序來調度線程的執行,具有高優先順序的線程會在較低優先順序的線程之前得到執行。同時線程的調度是搶先式的。


 3.實現多線程可以用哪兩種基本方法。將這兩種方法進行比較。

第一種方法是通過實現Runnable介面實現,第二種方法是通過繼承Thread類,

使用Runnable方式可以實現兩條線程交替運行(註:不是絕對的交替),而用Thread無法實現。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.