成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

Java? 教程(進程和線程)

AZmake / 2859人閱讀

并發(fā)

計算機用戶想當然地認為他們的系統(tǒng)一次可以做不止一件事,他們設(shè)想他們可以繼續(xù)在文字處理器中工作,而其他應(yīng)用程序則下載文件、管理打印隊列和流音頻,即使是單個應(yīng)用程序通常也希望一次完成多個任務(wù)。例如,流式音頻應(yīng)用程序必須同時從網(wǎng)絡(luò)上讀取數(shù)字音頻、解壓縮、管理回放并更新其顯示,甚至文字處理器應(yīng)始終準備好響應(yīng)鍵盤和鼠標事件,無論重新格式化文本或更新顯示有多繁忙,可以執(zhí)行此類操作的軟件稱為并發(fā)軟件。

Java平臺的設(shè)計初衷是為了支持并發(fā)編程,在Java編程語言和Java類庫中提供基本的并發(fā)支持,從5.0版開始,Java平臺還包含高級并發(fā)API,本課程介紹了平臺的基本并發(fā)支持,并總結(jié)了java.util.concurrent包中的一些高級API。

進程和線程

在并發(fā)編程中,有兩個基本的執(zhí)行單元:進程和線程,在Java編程語言中,并發(fā)編程主要涉及線程,但是,進程也很重要。

計算機系統(tǒng)通常具有許多活動進程和線程,即使在只有單個執(zhí)行核心的系統(tǒng)中也是如此,因此在任何給定時刻只有一個線程實際執(zhí)行,單個核心的處理時間通過稱為時間切片的OS功能在進程和線程之間共享。

對于具有多個處理器或具有多個執(zhí)行核心的處理器的計算機系統(tǒng)變得越來越普遍,這極大地增強了系統(tǒng)并發(fā)執(zhí)行進程和線程的能力 — 但即使在沒有多個處理器或執(zhí)行核心的簡單系統(tǒng)上,并發(fā)也是可能的。

進程

進程具有獨立的執(zhí)行環(huán)境,進程通常具有完整的私有基本運行時資源集,特別是,每個進程都有自己的內(nèi)存空間。

進程通常被視為程序或應(yīng)用程序的同義詞,但是,用戶看作的單個應(yīng)用程序?qū)嶋H上可能是一組協(xié)作進程,為了促進進程之間的通信,大多數(shù)操作系統(tǒng)都支持進程間通信(IPC)資源,例如管道和socket,IPC不僅用于同一系統(tǒng)上的進程之間的通信,還用于不同系統(tǒng)上的進程。

Java虛擬機的大多數(shù)實現(xiàn)都作為單個進程運行,Java應(yīng)用程序可以使用ProcessBuilder對象創(chuàng)建額外進程,多進程應(yīng)用程序超出了本課程的范圍。

線程

線程有時被稱為輕量級進程,進程和線程都提供執(zhí)行環(huán)境,但創(chuàng)建新線程所需的資源比創(chuàng)建新進程要少。

線程存在于進程中 — 每個進程至少有一個線程,線程共享進程的資源,包括內(nèi)存和打開文件,這使高效但可能有問題的通信。

多線程執(zhí)行是Java平臺的基本特性,每個應(yīng)用程序至少有一個線程 — 或幾個,如果你計算執(zhí)行內(nèi)存管理和信號處理等任務(wù)的“系統(tǒng)”線程的話。但是從應(yīng)用程序員的角度來看,你只從一個線程開始,稱為主線程,該線程具有創(chuàng)建額外線程的能力,我們將在下一節(jié)中進行演示。

下一篇:Thread對象

文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/73003.html

相關(guān)文章

  • 【VisualVM 簡明教程】(4): 分析CPU

    摘要:快照,帶線程命令,是顯示全部進程,是顯示線程,全格式輸出顯示進程樹,不加顯示所有實時快照推薦程度按數(shù)字從小到大。 有時候好好的程序放到生產(chǎn)服務(wù)器上一段時間后,就會發(fā)現(xiàn)服務(wù)器響應(yīng)緩慢,進而進一步發(fā)現(xiàn)是cpu過高,于是就慌了,造成cpu過高的原因很多,不過大多是由于資源吃緊造成,例如:sql執(zhí)行過慢,程序里存在死循環(huán),數(shù)據(jù)庫連接未釋放,網(wǎng)絡(luò)阻塞導(dǎo)致的第三方框架代碼出現(xiàn)死循環(huán),大量的操作導(dǎo)致...

    ormsf 評論0 收藏0
  • Java 8 并發(fā)教程線程執(zhí)行器

    摘要:在這個示例中我們使用了一個單線程線程池的。在延遲消逝后,任務(wù)將會并發(fā)執(zhí)行。這是并發(fā)系列教程的第一部分。第一部分線程和執(zhí)行器第二部分同步和鎖第三部分原子操作和 Java 8 并發(fā)教程:線程和執(zhí)行器 原文:Java 8 Concurrency Tutorial: Threads and Executors 譯者:BlankKelly 來源:Java8并發(fā)教程:Threads和Execut...

    jsdt 評論0 收藏0
  • Python

    摘要:最近看前端都展開了幾場而我大知乎最熱語言還沒有相關(guān)。有關(guān)書籍的介紹,大部分截取自是官方介紹。但從開始,標準庫為我們提供了模塊,它提供了和兩個類,實現(xiàn)了對和的進一步抽象,對編寫線程池進程池提供了直接的支持。 《流暢的python》閱讀筆記 《流暢的python》是一本適合python進階的書, 里面介紹的基本都是高級的python用法. 對于初學python的人來說, 基礎(chǔ)大概也就夠用了...

    dailybird 評論0 收藏0

發(fā)表評論

0條評論

最新活動
閱讀需要支付1元查看
<