1. 程式人生 > >【Java】—— JVM篇

【Java】—— JVM篇

JVM知識

  1. 什麼情況下會發生棧記憶體溢位。

  2. JVM的記憶體結構,Eden和Survivor比例。

  3. JVM記憶體為什麼要分成新生代,老年代,持久代。新生代中為什麼要分為Eden和Survivor。

  4. JVM中一次完整的GC流程是怎樣的,物件如何晉升到老年代,說說你知道的幾種主要的JVM參
    數。

  5. 你知道哪幾種垃圾收集器,各自的優缺點,重點講下cms和G1,包括原理,流程,優缺點。

  6. 垃圾回收演算法的實現原理。

  7. 當出現了記憶體溢位,你怎麼排錯。

  8. JVM記憶體模型的相關知識瞭解多少,比如重排序,記憶體屏障,happen-before,主記憶體,工作
    記憶體等。

  9. 簡單說說你瞭解的類載入器,可以打破雙親委派麼,怎麼打破。

  10. 講講JAVA的反射機制。

  11. 你們線上應用的JVM引數有哪些。

  12. g1和cms區別,吞吐量優先和響應優先的垃圾收集器選擇。

  13. 怎麼打出執行緒棧資訊。

  14. 請解釋如下jvm引數的含義:
    -server -Xms512m -Xmx512m -Xss1024K
    -XX:PermSize=256m -XX:MaxPermSize=512m -
    XX:MaxTenuringThreshold=20XX:CMSInitiatingOccupancyFraction=80 -
    XX:+UseCMSInitiatingOccupancyOnly。

相關推薦

Java—— JVM

JVM知識 什麼情況下會發生棧記憶體溢位。 JVM的記憶體結構,Eden和Survivor比例。 JVM記憶體為什麼要分成新生代,老年代,持久代。新生代中為什麼要分為Eden和

2JVM-JAVA對象的訪問

lin oar XML nts java棧 article value new string Java中對象的訪問 JAVA是面向對象的語言,那麽在JAVA虛擬機中,存在非常多的對象,對象訪問是無處不在的。即時是最簡單的訪問,也會涉及到JAVA棧、JAVA堆、方法區

Java入門提高Day5 Java中的回調(二)

彈出對話框 java入門 也會 color 編程 args performed show clas   Java中有很多個Timer,常用的有兩個Timer類,一個java.util包下的Timer,一個是javax.swing包下的Timer,兩個Timer類都有用到回調

Java入門提高Day11 Java代理——JDK動態代理

創建 pri 建立 ret and etc bool 提高 跳舞   今天來看看Java的另一種代理方式——JDK動態代理   我們之前所介紹的代理方式叫靜態代理,也就是靜態的生成代理對象,而動態代理則是在運行時創建代理對象。動態代理有更強大的攔截請求功能,因為可以獲得類的

Java入門提高Day12 Java代理——Cglib動態代理

效率 object urn 而且 什麽 tor clas ams 提高   今天來介紹另一種更為強大的代理——Cglib動態代理。   什麽是Cglib動態代理?   我們先回顧一下上一篇的jdk動態代理,jdk動態代理是通過接口來在運行時動態創建委托類的代理對象,但是跟靜

Java入門提高Day13 Java中的反射機制

== getchar 復制對象 enc 類型判斷 amt sim 博客 contains   前一段時間一直忙,所以沒什麽時間寫博客,拖了這麽久,也該更新更新了。最近看到各種知識付費的推出,感覺是好事,也是壞事,好事是對知識沈澱的認可與推動,壞事是感覺很多人忙於把自己的知識

Java入門提高Day15 Java泛型再探——泛型通配符及上下邊界

編譯器 pan 會有 認識 方法重載 上界 圖片 解決 int   上篇文章中介紹了泛型是什麽,為什麽要使用泛型以及如何使用泛型,相信大家對泛型有了一個基本的了解,本篇將繼續講解泛型的使用,讓你對泛型有一個更好的掌握和更深入的認識。   上篇中介紹完泛型之後,是不是覺得泛型

Java入門提高Day16 Java異常處理(下)

http final 自定義異常 2個 輸入 也有 推薦 錯誤 num   今天繼續講解java中的異常處理機制,主要介紹Exception家族的主要成員,自定義異常,以及異常處理的正確姿勢。 Exception家族   一圖勝千言,先來看一張圖。   Excepti

Java認識 JDK,JRE,JVM

JDK,JRE,JVM 今天我們討論下這三個Java工具 JDK         全稱Java Development ToolKit(Java 開發工具包)。 JDK是整個JAVA的核心,其包括了Java執行環境(Java Runtime Envirnment)

JavaJVMJavaJVM記憶體管理 2018-10-5

Java中JVM記憶體管理 JVM記憶體劃分: ① 方法區 (執行緒共享) 常量 靜態變數 JIT(即時編譯器)編譯後代碼也在方法區存放 ② 堆記憶體(執行緒共享) 垃圾回收的主要場地 ③

Java入門提高Day34 Java容器類詳解(十五)WeakHashMap詳解

public class WeakHashMapTest { public static void main(String[] args){ testWeakHashMap(); } private static void testWeakHashMap

Java監控遠端伺服器JVM

今天在用JMeter進行測試的時候,發現執行緒併發量到50的時候會導致阻塞情況,於是需要監控遠端JVM,那麼如何監控遠端JVM呢? 首先,找到啟動計量引擎的sh檔案,例如我目前的計量引擎啟停檔案為stratAPP.sh、stopAPP.sh 1.停止引擎 ./stopApp.sh 2.新增內容 JAVA_

Java入門提高Day2 介面

  上一篇講完了抽象類,這一篇主要講解比抽象類更加抽象的內容——介面。   什麼是介面呢?先來看一個現實中的栗子,我們常用的插座,一般分為兩孔和三孔,所以基本上不管是什麼電器,只要插頭插進去就可以正常使用,想想看,如果沒有這樣的規範,有十幾種不同的插座孔,每個電器的插頭都不一樣,還不得崩潰掉。   先來看

java學習-JVM JSTAT命令的用法和引數講解

一、常用命令分析 1. jstat -gc pid 可以顯示gc的資訊,檢視gc的次數,及時間。 其中最後五項,分別是young gc的次數,young gc的時間,full gc的次數,full gc的時間,gc的總時間。 2.jstat -gccapacity pid 可以顯示,VM記憶體

Java演算法——演算法

演算法 10億個數字裡裡面找最小的10個。 有1億個數字,其中有2個是重複的,快速找到它,時間和空間要最優。 2億個隨機生成的無序整數,找出中間大小的值。 給一個不知

JAVA併發第一Java的程序與執行緒

# 1、程序與執行緒 ## 1.1、程序 程序可以看作是程式的執行過程。一個程式的執行需要CPU時間、記憶體空間、檔案以及I/O等資源。作業系統就是以程序為單位來分配這些資源的,所以說程序是分配資源的基本單位。 (1)、程序是動態的,程式是靜態的 程式是靜態的,它本身作為一種軟體資源可以長期儲存在磁碟(常

JAVA併發第二Java執行緒的建立與執行,執行緒狀態與常用方法

1、執行緒的建立與執行 (1)、繼承或直接使用Thread類 繼承Thread類建立執行緒: /** * 主類 */ public class ThreadTest { public static void main(String[] args) { //建立執行緒物件

javaitoo項目實戰之hibernate 懶載入優化性能

bsp xtra extra pda 程序 前端框架 外連接 獲取 轉換成 在做itoo 3.0 的時候,考評系統想要上線,就開始導入數據了,僅僅導入學生2萬條數據,可是導入的速度特別的慢。這個慢的原因是由於導入的時候進行了過多的IO操作。可是導入成功之後,

javaitoo項目實戰之hibernate 批量保存優化

新的 hibernate 缺點 try 實戰 lis 插入 entity man 在itoo中。基本上每一個系統都有一個導入功能,大量的數據填寫進入excel模板中。然後使用導入功能導入的數據庫中,這樣能夠大大的提高工作效率。那麽導入就涉及到了批量保存數據庫的

Java滾動數組動態規劃UVA - 11137 - Ingenuous Cubrency

得到 lose math scanner light clas details 狀態 ann 滾動數組優化自己畫一下就明白了。 http://blog.csdn.net/u014800748/article/details/45849217 解題思路:本題利用遞推關系解決。