JVM

GC 為何會導致執行緒數降低?

疑惑 近期收到一些報警,是方法效能報警,定位原因主要是瞬時流量突增引起的,但是觀察方法中查詢 MySQL 的效能不差,效能花費在哪裡?同時觀察 JVM 效能,發現 YoungGC 變多了,CPU 使用率高了

【譯】Java引用物件

在寫了15年C/C++之後,我於1999年開始寫Java。藉助指標切換(pointer handoffs)等編碼實踐或者Purify等工具,我認為自己對C風格的記憶體管理已經得心應手了,甚至已經不記得上次發生記

JVM知識總結-執行時區域劃分

區域簡介 JVM執行時區域有些隨著虛擬機器程序的啟動而存在,有些依賴於使用者執行緒的啟動和結束而建立和銷燬,大致分為以下幾類: 方法區 , 虛擬機器棧 , 本地方法棧 , 堆 , 程式計數器 ,概念圖如下

深入理解Java虛擬機器(二)

1、泛型出現之前存在的問題: 所有物件的型別都繼承自Object,虛擬機器只有到執行時才能知道這個Object具體是什麼型別,在編譯期是無法檢查這個Object是否強制轉型成功,會將ClassCaseExc

面向物件-異常

異常概述 什麼是異常(Exception:Java在執行過程當中出現的錯誤 Throwable 類是 Java 語言中所有錯誤或異常的超類。 異常:分為執行時異常和編譯時異常,我們需要了解的是執

Java虛擬機器必知的四大知識要點

作者 | 鄭雨迪來源 | 極客時間《深入拆解 Java 虛擬機器》 作為一位 Java 程式設計師,在盡情享受 Java 虛擬機器帶來好處的同時,我們還應該去了解和思考“這些技術特性是如何實現的”,

死磕Synchronized底層實現--重量級鎖

本文為死磕Synchronized底層實現第三篇文章,內容為重量級鎖實現。 本系列文章將對HotSpot的 synchronized 鎖實現進行全面分析,內容包括偏向鎖、輕量級鎖、重量級鎖的加鎖、解鎖、鎖

Synchronized 的實現原理

最近在看《Java併發程式設計的藝術》,看到一個常見的面試點 Synchronized實現原理,這塊知識工作中也用不到,但是我們還是有必要了解下這個,畢竟我們professional。 本文主體思路 1

言簡意賅——總結Java記憶體區域和常量池

本文用最簡潔的描述,來總結出Java記憶體區域和常量池的相關知識,如需更加深入學習Java記憶體區域以及常量池,可參考閱讀《深入Java虛擬機器》或者網上優秀博文。 執行時資料區 執行資料區包含以下幾個

垃圾收集3: 垃圾回收器

如果說收集演算法是記憶體回收的方法論,那麼垃圾收集器就是記憶體回收的具體實現。現在為止還沒有最好的垃圾收集器出現,更加沒有萬能的垃圾收集器,我們能做的就是根據具體應用場景選擇適合自己的垃圾收集器。HotSpot

如何從程式設計的本質理解JVM記憶體模型

如何從程式設計的本質理解JVM記憶體模型 一般聊JVM記憶體模型都是把圖截出來,然後對著圖,解釋上面堆、棧之類的概念。這篇將分享下,如何從程式設計的本質上理解,JVM記憶體模型是什麼樣子,為什麼是這個樣子,

如何理解編譯型語言、解釋型語言?

編譯型和解釋型在平時開發業務邏輯的時候,基本上用不到。 但對他們有一個稍微深入的瞭解,還是有所必要的,畢竟這是一種基礎知識和概念。 基礎知識是底層支撐,雖然很少運用在具體事

1716135787.3403