日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > java >内容正文

java

Java基础:多线程

發布時間:2025/5/22 java 48 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Java基础:多线程 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

基本概念

程序&線程&進程

  • 程序是一個段可以提供業務功能的代碼,它可以包含1個或多個進程。程序在OS上運行時表現為進程對各種資源(CPU,內存,Disk..)的消耗和處理。
  • 進程是OS進行資源調度的最小單元:進程獨立占用CPU,任何時候,只有一個進程能占用CPU,其他進程都在等待中;進程也有獨立的內存,崩掉的時候不會對OS中其他的進程造成影響,但是進程之間切換的代價較高;OS頻繁切換進程會對CPU,內存造成較大壓力。
  • 線程是CPU調用的最小單元,基本不擁有其他系統資源(除了一些存儲變量的堆棧..); 不同線程之間共享同一個進程的內存,通過鎖機制來實現對同一段內存變量的存取,一旦某個線程死掉,整個進程都會因為內存鎖死掉。

以工廠模擬OS工作原理為例來說明

OS對應工廠,該工廠有很多車間(進程),每個車間有獨立的設備(內存)和多個工人(線程)。車間通過供電設備進行開工,但一個供電設備只有一個接頭(CPU),不同車間之間輪詢著開工,但是一個車間開工時多個工人可以并行著工作。同個車間的工人并行工作時可能用到相同的設備,需要用同一個設備時要排隊(鎖機制),一個設備被釋放以后才能被下一個工人使用。

什么情況下用多線程?

同時進行并且又要共享某些變量的并發操作,只能用線程,不能用進程。比如異步調用就必須用多線程,性能測試模擬多個用戶同時發請求時也必須用多線程(否則只能一個用戶發完請求另一個用戶再發), 對性能要求高又可以將任務進行拆分的場合下建議使用多線程,但是一定要注意維護代碼的健壯性。

?

轉載于:https://www.cnblogs.com/vivian-test/p/5869884.html

總結

以上是生活随笔為你收集整理的Java基础:多线程的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。