摘要: 在java虛擬機規范的描述中,除了程序計數器外,虛擬機內存的其他幾個運行時區域都有發生OutOfMemoryError異常的可能。 java堆溢出 java堆用于存儲對象實例,只要不斷的創建對象,并且保證GC Roots到對象之間有可達路徑來避免垃圾回收機制清除這些對象,那么在對象數量達到最大堆得容閱讀全文
posted @ 2018-11-05 09:58 shanhm 閱讀(2) 評論(0) 編輯
摘要: 對象的創建 虛擬機遇到一條new指令時,首先去檢查這個指令的參數是否能在常量池中定位到一個類的符號引用,并且檢查這個符號引用代表的類是否已被加載、解析和初始化過。 在類加載檢查通過后,接下來虛擬機將為新生對象分配內存。對象所需內存的大小在類加載完成后便可完全確定,為對象分配空間的任務等同于把一塊確定閱讀全文
posted @ 2018-11-05 09:40 shanhm 閱讀(2) 評論(0) 編輯
摘要: Java技術體系模塊圖 java虛擬機在執行java程序的過程中會把它所管理的內存劃分為若干個不同的數據區域。這些區域都有各自的用途,以及各自的創建和銷毀時間,有的區域隨虛擬機進程的啟動而存在,有些區域則依賴用戶線程的啟動和結束而建立和銷毀。 程序計數器 是一塊較小的內存空間,它可以看作是當前線程所閱讀全文
posted @ 2018-11-05 02:14 shanhm 閱讀(1) 評論(0) 編輯
摘要: 啟動三個線程打印遞增的數字, 線程1先打印1,2,3,4,5,然后是線程2打印6,7,8,9,10,然后是線程3打印11,12,13,14,15, 接著再由線程1打印16,17,18,19,20...由此類推,直到打印到75閱讀全文
posted @ 2018-11-04 19:19 shanhm 閱讀(4) 評論(0) 編輯
摘要: 設計一個符合生產者和消費者問題的程序。對一個對象(槍膛)進行操作,其最大容量是12顆子彈。 生產者線程是一個壓入線程,它不斷向槍膛中壓入子彈;消費者線程是一個射出線程,它不斷從槍膛中射出子彈。 要求: (1)為了防止兩個線程訪問一個資源時出現忙等待,要使用的wait-notify函數,是兩個線程交替執行; (2)程序輸出,要模擬體現對槍膛的壓入和射出操作;閱讀全文
posted @ 2018-11-04 19:12 shanhm 閱讀(1) 評論(0) 編輯
摘要: 有大約40萬個數字(數字范圍:0~200000000000000),數字沒有重復,這些數字在一個txt文件中,每行為一個數字。 1.這個txt文件放在一個WEB服務器上, 可以通過http://ip:8888/numbers.txt 下載。 2.求這些數字中,最大的100個數字之和。 3.注意:運行堆內存只有4M ( java -Xmx4m ) 4.不允許寫臨時文件 5.要求耗時:小于2秒 (CPU:Intel i5-4590 3.3GHz)閱讀全文
posted @ 2018-11-04 18:38 shanhm 閱讀(6) 評論(0) 編輯
摘要: 前段時間給團隊整了一個rpm安裝包的打包和使用方法,雖然最后沒被采納,理由是大家不怎么了解,寧愿繼續使用tar包解壓形式安裝,但我還是比較完整的整理了一遍,就記在這里了。 參考文章 1. https://blog.csdn.net/get_set/article/details/534533202.閱讀全文
posted @ 2018-11-04 15:43 shanhm 閱讀(1) 評論(0) 編輯
摘要: vmware版本:14.1.1;oracle版本:Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - 64bit;問題概括:1.安裝vnc;2.用vnc安裝oracle;3.監聽服務啟動以及客戶端登錄問題;閱讀全文
posted @ 2018-11-04 15:33 shanhm 閱讀(5) 評論(0) 編輯
摘要: vmware版本:14.1.1;centos版本:7;問題概括:安裝centos并將ip改為靜態,解決上網和ssh登錄問題;閱讀全文
posted @ 2018-11-04 14:43 shanhm 閱讀(4) 評論(0) 編輯
摘要: ubuntu版本:16.0.4;elasticsearch版本:6.2.4;問題概括:1:安裝elasticsearch服務;2:安裝elasticsearch-head插件;閱讀全文
posted @ 2018-11-04 14:25 shanhm 閱讀(26) 評論(0) 編輯
耐克篮球多少钱