大战熟女丰满人妻av-荡女精品导航-岛国aaaa级午夜福利片-岛国av动作片在线观看-岛国av无码免费无禁网站-岛国大片激情做爰视频

專注Java教育14年 全國咨詢/投訴熱線:400-8080-105
動力節點LOGO圖
始于2009,口口相傳的Java黃埔軍校
首頁 學習攻略 Java多線程你了解多少?

Java多線程你了解多少?

更新時間:2019-05-29 10:39:23 來源:動力節點 瀏覽3327次

  在Java程序中使用多線程要比在C或C++中容易得多,這是因為Java編程語言提供了語言級的支持,以下小編為大家用簡單的編程示例來說明Java程序中的多線程是多么直觀的。希望讀完本文可以幫助大家能夠編寫簡單的多線程程序。

Java多線程你了解多少?.png

  為什么會排隊等待?


  下面的這個簡單的Java程序完成四項不相關的任務。這樣的程序有單個控制線程,控制在這四個任務之間線性地移動。此外,因為所需的資源—打印機、磁盤、數據庫和顯示屏--由于硬件和軟件的限制都有內在的潛伏時間,所以每項任務都包含明顯的等待時間。因此,程序在訪問數據庫之前必須等待打印機完成打印文件的任務,等等。如果您正在等待程序的完成,則這是對計算資源和您的時間的一種拙劣使用。改進此程序的一種方法是使它成為多線程的。


  四項不相關的任務


  classmyclass{staticpublicvoidmain(Stringargs){print_a_file;manipulate_another_file;access_database;draw_picture_on_screen;}}


  在本例中,每項任務在開始之前必須等待前一項任務完成,即使所涉及的任務毫不相關也是這樣。但是,在現實生活中,我們經常使用多線程模型。我們在處理某些任務的同時也可以讓孩子、配偶和父母完成別的任務。例如,我在寫信的同時可能打發我的兒子去郵局買郵票。用軟件術語來說,這稱為多個控制(或執行)線程。


  可以用兩種不同的方法來獲得多個控制線程:


  多個進程


  在大多數操作系統中都可以創建多個進程。當一個程序啟動時,它可以為即將開始的每項任務創建一個進程,并允許它們同時運行。當一個程序因等待網絡訪問或用戶輸入而被阻塞時,另一個程序還可以運行,這樣就增加了資源利用率。但是,按照這種方式創建每個進程要付出一定的代價:設置一個進程要占用相當一部分處理器時間和內存資源。而且,大多數操作系統不允許進程訪問其他進程的內存空間。因此,進程間的通信很不方便,并且也不會將它自己提供給容易的編程模型。


  線程


  線程也稱為輕型進程(LWP)。因為線程只能在單個進程的作用域內活動,所以創建線程比創建進程要廉價得多。這樣,因為線程允許協作和數據交換,并且在計算資源方面非常廉價,所以線程比進程更可齲線程需要操作系統的支持,因此不是所有的機器都提供線程。Java編程語言,作為相當新的一種語言,已將線程支持與語言本身合為一體,這樣就對線程提供了強健的支持。


  


提交申請后,顧問老師會電話與您溝通安排學習

免費課程推薦 >>
技術文檔推薦 >>
主站蜘蛛池模板: 久久精品影院一区二区三区 | 99精品免费观看 | 九色蝌蚪自拍 | 青草视频在线观看视频 | 久热精品视频在线播放 | 四虎国产精品免费久久久 | 久久国产精品二国产精品 | 香蕉久久夜色精品国产2020 | 狠狠狠狠狠狠干 | 在线看的成人性视频 | 久久99热精品免费观看无卡顿 | 日韩毛片高清免费 | 国内精品久久影院 | 风流一代在线播放 | 国产福利在线观看精品 | 好爽毛片一区二区三区四区 | 最新国产午夜精品视频成人 | 日韩永久免费视频 | 一本大道久久香蕉成人网 | 台湾一级毛片永久免费 | 欧美性理论片在线观看片免费 | 免费一级a毛片 | 国产亚洲漂亮白嫩美女在线 | 黄色一级片免费网站 | 在线免费视频国产 | 欧美伦理一区 | 欧美开嫩苞实拍视频在线观看 | 欧美一区二区三区视频在线观看 | 欧美操人视频 | 99久久免费国产精品热 | 99九九国产精品免费视频 | aa大片成人免费网站 | 毛片网络| 曰曰鲁夜夜免费播放视频 | 一区二区三区四区日韩 | 亚洲综合色就色手机在线观看 | 国产精品免费一区二区三区 | 四虎最新在线 | 国产精品久久久久久久久久免费 | 深夜你懂的在线网址入口 | 国产成人免费a在线视频色戒 |