首頁 Java Java基礎 一起和Netty學習Java鎖的使用

一起和Netty學習Java鎖的使用

Jan 04, 2021 am 10:04 AM
netty

java基礎教學專欄介紹如何和Netty學習Java鎖定

一起和Netty學習Java鎖的使用

##推薦(免費):java基礎教學

1 鎖定的物件和範圍

    縮小粒度


2 鎖定的物件本身大小

    減少空間佔用

  • Atomic long V.S long
    前者是個對象,包含物件頭(object header)以保存hashcode、lock 等訊息,64 位元系統下佔16位元組,64位元系統下:
  • volatile long= 8 bytes
  • AtomicLong = 8 bytes (volatile long) 16bytes (物件頭) 8 bytes (引用) = 32 bytes
  • 至少節約24位元組!

所以Atomic* objects =》 Volatile primary type Static Atomic*FieldUpdater


3 鎖定的速度
## 提高並發性

LongCounter

記錄記憶體分配位元組數等功能用到的。

高並發下: java.util.concurrent.atomic.AtomicLong => java.util.concurrent.atomic.LongAdder


結論:及時衡量、使用JDK最新的功能

根據不同情況,選擇不同的並發套件實作

JDK< 1.8考慮ConcurrentHashMapV8 ( ConcurrentHashMap在jDK8中的版本)


  • 4 不同場景選擇不同的並發類別

  • 因需而變


  • 關閉並等待關閉事件執行器( Event Executor) :
    Object.wait/ notify =》 CountDownLatch

Nio Event loop中負責儲存task的Queue

Jdk's LinkedBlockingQueue (MPMC,多生產者多元消費者) -> jctools' MPSC io.netty.util.internal.PlatformDependent.Mpsc#newMpscQueue(int):





######## #######5 鎖定的價值#########能不用則不用則不用### Netty應用場景下:局部串列整體並行>- -個佇列多個執行緒模式:## # 降低用戶開發難度、邏輯簡單、提升處理效能### 避免鎖帶來的上下文切換和並發保護等額外開銷######避免用鎖:用ThreadLocal來避免資源爭用,例如Netty輕量級級的線程池實作#########

以上是一起和Netty學習Java鎖的使用的詳細內容。更多資訊請關注PHP中文網其他相關文章!

本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

AI Hentai Generator

AI Hentai Generator

免費產生 AI 無盡。

熱門文章

R.E.P.O.能量晶體解釋及其做什麼(黃色晶體)
1 個月前 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.最佳圖形設置
1 個月前 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.如果您聽不到任何人,如何修復音頻
1 個月前 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.聊天命令以及如何使用它們
1 個月前 By 尊渡假赌尊渡假赌尊渡假赌

熱工具

記事本++7.3.1

記事本++7.3.1

好用且免費的程式碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發環境

Dreamweaver CS6

Dreamweaver CS6

視覺化網頁開發工具

SublimeText3 Mac版

SublimeText3 Mac版

神級程式碼編輯軟體(SublimeText3)

Java API 開發中使用 Netty4 進行 TCP 通信 Java API 開發中使用 Netty4 進行 TCP 通信 Jun 17, 2023 pm 11:18 PM

TCP是電腦網路通訊協定的一種,是一種連線導向的傳輸協定。在Java應用開發中,TCP通訊被廣泛應用於各種場景,例如客戶端和伺服器之間的資料傳輸、音訊視訊即時傳輸等等。 Netty4是一個高效能、高可擴展性、高效能的網路程式框架,能夠優化伺服器和用戶端之間的資料交換流程,使其更有效率可靠。使用Netty4進行TCP通訊的具體實作步驟如下:引入

Java開發:如何使用Netty進行高效能網路編程 Java開發:如何使用Netty進行高效能網路編程 Sep 20, 2023 pm 02:09 PM

Java開發:如何使用Netty進行高效能網路程式設計摘要:Netty是一個高效能、非同步事件驅動的網路程式框架,能夠簡化網路應用程式的開發過程。本文將介紹Netty的主要特點以及如何使用Netty進行高性能網路程式設計。同時,我們也會提供一些具體的Java程式碼範例,幫助讀者更能理解和應用Netty。一、Netty簡介Netty是一個基於JavaNIO的網路程式框

PHP實作開源Netty框架 PHP實作開源Netty框架 Jun 18, 2023 pm 07:03 PM

隨著網路科技的不斷發展,網路程式設計變得越來越重要。在這個領域中,Netty是一個十分知名的框架。它是一個高效能、非同步事件驅動的網路應用程式框架,被廣泛用於開發各種高並發的網路應用程式。 Netty是一個Java框架,它的產生推動了Java網路程式設計的發展。然而,隨著PHP的廣泛使用,PHP開發者也在尋找能夠勝任高並發網路程式設計的框架。因此,本文介紹如何利用P

springboot整合netty框架的方式有哪些 springboot整合netty框架的方式有哪些 May 10, 2023 pm 09:55 PM

netty作為一個高效能的io框架,是非好用的一個技術框架,Netty是一個基於NIO的客戶、伺服器端程式設計框架,使用Netty可以確保你快速且簡單的開發出一個網路應用,例如實現了某種協定的客戶、服務端應用。 Netty相當於簡化和流線化了網路應用的程式開發過程,例如:基於TCP和UDP的socket服務開發。 「快速」和「簡單」並不用產生維護性或效能上的問題。 Netty是個吸收了多種協定(包括FTP、SMTP、HTTP等各種二進位文字協定)的實作經驗,並經過相當精心設計的專案。最終,Netty成功

Java後端開發:使用Netty建置高並發API伺服器 Java後端開發:使用Netty建置高並發API伺服器 Jun 17, 2023 am 10:23 AM

隨著互聯網的不斷發展和應用領域的不斷擴展,高並發成為了網絡應用開發中必須考慮的問題,而Java作為一種廣泛應用於企業級應用開發的語言,其在高並發應用場景下的表現備受關注。 Netty是一款高效能、非同步事件驅動的網路應用框架,近年來在Java後端開發領域享有廣泛的應用。本文將介紹Netty的基本概念和使用方法,並以建立高同時的API伺服器為例,展示Netty

如何使用Java開發一個基於Netty的高效能網頁應用 如何使用Java開發一個基於Netty的高效能網頁應用 Sep 20, 2023 pm 12:21 PM

如何使用Java開發一個基於Netty的高效能網路應用Netty是一種基於JavaNIO技術的網路程式框架,被廣泛應用於高效能的網路應用開發。在本文中,我們將探討如何使用Java和Netty來開發一個基於Netty的高效能網路應用。我們將介紹Netty的基本概念和特性,並提供一些程式碼範例以幫助你更好地理解和使用Netty。一、Netty的基本概念與特性Ne

Java API 開發中使用 Netty 進行 TCP 通信 Java API 開發中使用 Netty 進行 TCP 通信 Jun 18, 2023 pm 11:34 PM

JavaAPI開發中使用Netty進行TCP通訊在現代軟體開發中,網路通訊已成為不可或缺的一部分。 Netty是一種Java框架,用於在高效能網路應用中有效地進行快速開發。它提供了一組易於使用的API,封裝了JavaNIO和其他網路庫。在JavaAPI開發中,Netty的優越性可以體現在以下幾個方面:高性能Netty的應用程式

Java API 開發中使用 Netty5 進行 TCP 通信 Java API 開發中使用 Netty5 進行 TCP 通信 Jun 18, 2023 am 08:31 AM

在JavaAPI開發中,TCP通訊是一個非常重要的元件,而Netty5是一套基於NIO的高效能網路通訊框架,可以非常方便地處理複雜的網路通訊任務。本文將介紹如何使用Netty5進行TCP通信,包括Netty5的核心元件、常用API的介紹和實際應用案例。同時,本文也將介紹如何使用Netty5來提高TCP通訊的效能和可靠性。一、Netty5的核心組件Netty5

See all articles