gc編譯目錄
Ⅰ gc是什麼
GC有多層含義,一是計算機術語,指Garbage Collection;二是網路用語,支持的意思;三是網路域中的GC,就是「全局目錄」Global Catalog;四是科研用語,即Gas Chromatography(氣相色譜法)。
GC(Grid Communication)網格通信。網格是一種新興的技術,正處在不斷發展和變化當中。目前學術界和商業界圍繞網格開展的研究有很多,其研究的內容和名稱也不盡相同因而網格尚未有精確的定義和內容定位。比如國外媒體常用「下一代互聯網」、「Internet2」、「下一代Web」等來稱呼網格相關技術。但「下一代互聯網(NGI)」和「Internet2」又是美國的兩個具體科研項目的名字。
CG在網路方面的應用:
在C/C++程序中,程序員在內存中主動開辟一段相應的空間來存值。由於內存是有限的,所以當程序不再需要使用該內存空間時,就需要銷毀對象並釋放其所佔用的內存資源,好重新利用這段空間。在C/C++中,釋放無用內存空間的事情需要由程序員自己來處理。
就是說當程序員認為空間沒用了,就手動地釋放其佔用的內存。但是這樣顯然非常繁瑣,如果有所遺漏,就可能造成資源浪費甚至內存泄露。當軟體系統比較復雜,變數多的時候程序員往往就忘記釋放內存或者在不該釋放的時候釋放內存了。
以上內容參考:網路-GC
Ⅱ 如何查看 java gc 類型
Java中的GC有哪幾種類型?
參數
描述
UseSerialGC
虛擬機運行在Client模式的默認值,打開此開關參數後,
使用Serial+Serial Old收集器組合進行垃圾收集。
UseParNewGC
打開此開關參數後,使用ParNew+Serial Old收集器組合進行垃圾收集。
UseConcMarkSweepGC
打開此開關參數後,使用ParNew+CMS+Serial Old收集器組合進行垃圾收集。Serial Old作為CMS收集器出現Concurrent Mode Failure的備用垃圾收集器。
UseParallelGC
虛擬機運行在Server模式的默認值,打開此開關參數後,使用Parallel Scavenge+Serial Old收集器組合進行垃圾收集。
UseParallelOldGC
打開此開關參數後,使用Parallel Scavenge+Parallel Old收集器組合進行垃圾收集。
在Java程序啟動完成後,通過jps觀察進程來查詢到當前運行的java進程,使用
jinfo –flag UseSerialGC 進程
的方式可以定位其使用的gc策略,因為這些參數都是boolean型的常量,如果使用該種gc策略會出現+號,否則-號。
使用-XX:+上述GC策略可以開啟對應的GC策略。
GC日誌查看
可以通過在java命令種加入參數來指定對應的gc類型,列印gc日誌信息並輸出至文件等策略。
GC的日誌是以替換的方式(>)寫入的,而不是追加(>>),如果下次寫入到同一個文件中的話,以前的GC內容會被清空。
對應的參數列表
-XX:+PrintGC 輸出GC日誌
-XX:+PrintGCDetails 輸出GC的詳細日誌
-XX:+PrintGCTimeStamps 輸出GC的時間戳(以基準時間的形式)
-XX:+PrintGCDateStamps 輸出GC的時間戳(以日期的形式,如 2013-05-04T21:53:59.234+0800)
-XX:+PrintHeapAtGC 在進行GC的前後列印出堆的信息
-Xloggc:../logs/gc.log 日誌文件的輸出路徑
這里使用如下的參數來進行日誌的列印:
-XX:+PrintGCDateStamps -XX:+PrintGCDetails -Xloggc:./gclogs
對於新生代回收的一行日誌,其基本內容如下:
2014-07-18T16:02:17.606+0800: 611.633: [GC 611.633: [DefNew: 843458K->2K(948864K), 0.0059180 secs] 2186589K->1343132K(3057292K), 0.0059490 secs] [Times: user=0.00 sys=0.00, real=0.00 secs]
其含義大概如下:
2014-07-18T16:02:17.606+0800(當前時間戳): 611.633(時間戳): [GC(表示Young GC) 611.633: [DefNew(單線程Serial年輕代GC): 843458K(年輕代垃圾回收前的大小)->2K(年輕代回收後的大小)(948864K(年輕代總大小)), 0.0059180 secs(本次回收的時間)] 2186589K(整個堆回收前的大小)->1343132K(整個堆回收後的大小)(3057292K(堆總大小)), 0.0059490 secs(回收時間)] [Times: user=0.00(用戶耗時) sys=0.00(系統耗時), real=0.00 secs(實際耗時)]
老年代回收的日誌如下:
2014-07-18T16:19:16.794+0800: 1630.821: [GC 1630.821: [DefNew: 1005567K->111679K(1005568K), 0.9152360 secs]1631.736: [Tenured:
2573912K->1340650K(2574068K), 1.8511050 secs] 3122548K->1340650K(3579636K), [Perm : 17882K->17882K(21248K)], 2.7854350 secs] [Times: user=2.57 sys=0.22, real=2.79 secs]
gc日誌中的最後貌似是系統運行完成前的快照:
Heap
def new generation total 1005568K, used 111158K [0x00000006fae00000, 0x000000073f110000, 0x0000000750350000)
eden space 893888K, 12% used [0x00000006fae00000, 0x0000000701710e90, 0x00000007316f0000)
from space 111680K, 3% used [0x0000000738400000, 0x000000073877c9b0, 0x000000073f110000)
to space 111680K, 0% used [0x00000007316f0000, 0x00000007316f0000, 0x0000000738400000)
tenured generation total 2234420K, used 1347671K [0x0000000750350000, 0x00000007d895d000, 0x00000007fae00000)
the space 2234420K, 60% used [0x0000000750350000, 0x00000007a2765cb8, 0x00000007a2765e00, 0x00000007d895d000)
compacting perm gen total 21248K, used 17994K [0x00000007fae00000, 0x00000007fc2c0000, 0x0000000800000000)
the space 21248K, 84% used [0x00000007fae00000, 0x00000007fbf92a50, 0x00000007fbf92c00, 0x00000007fc2c0000)
No shared spaces configured.
GC日誌的離線分析
可以使用一些離線的工具來對GC日誌進行分析,比如sun的gchisto( https://java.net/projects/gchisto),gcviewer( https://github.com/chewiebug/GCViewer ),這些都是開源的工具,用戶可以直接通過版本控制工具下載其源碼,進行離線分析。
下面就已gcviewer為例,簡要分析一下gc日誌的離線分析,gcviewer源代碼工程是maven結構的,可以直接用maven進行package,這里編譯的是1.34版本,本版本的快照已經上傳至附件中。
需要說明的是,gcviewer支持多種參數生成的gc日誌,直接通過java –jar的方式運行,載入生成的gc日誌即可:
Ⅲ 求助:GCC編譯選項加上
Debug選項:
在 gcc編譯源代碼時指定-g選項可以產生帶有調試信息的目標代碼,gcc可以為多個不同平台上帝不同調試器提供調試信息,默認gcc產生的調試信息是為 gdb使用的,可以使用-gformat 指定要生成的調試信息的格式以提供給其他平台的其他調試器使用.常用的格式有
-ggdb:生成gdb專 用的調試信息,使用最適合的格式(DWARF 2,stabs等)會有一些gdb專用的擴展,可能造成其他調試器無法運行.
-gstabs:使用 stabs格式,不包含gdb擴展,stabs常用於BSD系統的DBX調試器.
-gcoff:產生COFF格式的調試信息,常用於System V下的SDB調試器;
-gxcoff:產生XCOFF格式的調試信息,用於IBM的RS/6000下的DBX調試器;
-gdwarf- 2:產生DWARF version2 的格式的調試信息,常用於IRIXX6上的DBX調試器.GCC會使用DWARF version3的一些特性.
可 以指定調試信息的等級:在指定的調試格式後面加上等級:
如: -ggdb2 等,0代表不產生調試信息.在使用-gdwarf-2時因為最早的格式為-gdwarf2會造成混亂,所以要額外使用一個-glevel來指定調試信息的 等級,其他格式選項也可以另外指定等級.
gcc可以使用-p選項指定生成信息以供porf使用.
Ⅳ 如何在GCC++中編譯一個C++程序並運行
C源程序到運行程序步驟: 1.編輯:輸入源程序並存檔(.C) 2.編譯:將源程序翻譯為目標文件(.OBJ) 3.鏈接:將目標文件生成可執行文件( .EXE) 4.運行:執行.EXE文件,得到運行結果
Ⅳ gc是什麼意思啊
GC
abbr. 千兆周(gigacycle);車底距地高(Ground Clearance);制導計算機(Guidance Computer)
短語片語:
1.GC法 GC method;
2.portable GC 攜帶型車載氣相色譜儀;色譜儀;
3.Sensory GC 感官氣相色譜分析法;質譜儀;嗅覺氣相層析儀;
4.glucocorticoid GC 糖皮質激素;
5.Makai GC 馬凱球場;
6.GC Busan 車輪戰;
7.GC Life 廣慈有限公司;血管阻塞要人命。
(5)gc編譯目錄擴展閱讀:
雙語例句:
1.However, each application is different and so you should evaluate each GC policy to find the best fit for your application.
但是,應用程序是各不相同時,因此您應該評估各 GC 策略,以便找到最適合您應用程序的策略。
2.We must first understand that the GC not only manages objects but also maintains a separate reference object to the actual object.
我們必須首先理解這個 GC 不僅管理對象,而且還會維護對實際對象的一個單獨的引用對象。
3.This allows you to see only the methods executing when GC went wrong, for example, or to exclude data analyzed ring application startup.
這允許您,例如,只看到在 GC 出現問題時執行的方法;或者排除在應用程序啟動期間分析的數據。
Ⅵ gc是什麼意思的縮寫
1、漢語拼音
氣相色譜(gas chromatography 簡稱GC)是二十世紀五十年代出現的一項重大科學技術成就。這是一種新的分離、分析技術,它在工業、農業、國防、建設、科學研究中都得到了廣泛應用。氣相色譜可分為氣固色譜和氣液色譜。
2、GPRS網路介面
GC就是「全局目錄」Global Catalog,它包含了林中對象的屬性,例如用戶對象的姓名、登錄名稱等等。因此GC必須是DC(域控制器),默認第一台DC就是GC。
3、大學學生社團
是 Google精神和理念在大學校園里的延伸,是 Google 與高校學生之間的溝通渠道, 是由 Google 資助、並由同學組織和管理的學生社團,為傳播 Google 的 使命和價值觀,自發組織 有創意的、激勵進取和充滿樂趣的活動。Google Camp 並非單 純的技術俱樂部,它所倡導的活動 內容針對校園生活的方方面面, 致力於整合管理信息 ,並使之為同學服務,造福校園。
4、舞動精靈樂團
舞動精靈樂團 (Groove Coverage)是來自德國2001年創立的樂隊,由主唱Mell和DJ Novus組成。
舞動精靈樂團在2002年6月以首張單曲《Moonlight Shadow》取得了金唱片銷量,累積銷售25萬張。
5、日本動畫
GC即Guilty Crown即罪惡王冠 。
《罪惡王冠》是2011年10月放送的一部以超能力戰斗為題材的原創動畫,於2011年7月號《Newtype》月刊公布原創企劃,Proction I.G製作,荒木哲郎監督。作為一部優秀的原作品,劇情創作採用雙系列構成制,由腳本家吉野弘幸、大河內一樓負責
Ⅶ GC是什麼意思
GC有多層含義,一是計算機術語,指Garbage Collection;二是網路用語,支持的意思;三是網路域中的GC,就是「全局目錄」Global Catalog;四是科研用語,即Gas Chromatography(氣相色譜法)。
Ⅷ GC是什麼意思
GC有多層含義,一是計算機術語,指Garbage Collection;二是網路用語,支持的意思;三是網路域中的GC,就是「全局目錄」Global Catalog;四是科研用語,即Gas Chromatography(氣相色譜法)。
(8)gc編譯目錄擴展閱讀:
GC(Grid Communication)網格通信,網格是一種新興的技術,正處在不斷發展和變化當中。目前學術界和商業界圍繞網格開展的研究有很多,其研究的內容和名稱也不盡相同因而網格尚未有精確的定義和內容定位。
比如國外媒體常用「下一代互聯網」、「Internet2」、「下一代Web」等來稱呼網格相關技術。但「下一代互聯網(NGI)」和「Internet2」又是美國的兩個具體科研項目的名字,它們與網格研究目標相交叉,研究內容和重點有很大不同。
企業界用的名稱也很多,有內容分發(Contents Delivery)、服務分發(Service Delivery)、電子服務(e-service)、實時企業計算(Real-Time Enterprise Computing,簡稱RTEC)、分布式計算Peer-to-Peer Computing(簡稱P2P)、Web服務(Web Services)等。
中國科學院計算所所長李國傑院士認為,網格實際上是繼傳統互聯網、Web之後的第三次浪潮,可以稱之為第三代互聯網應用。
Ⅸ Java 的命令行 編譯和運行參數 如:-cp 怎麼理解
javac
用法:javac <選項> <源文件>
其中,可能的選項包括:
-g 生成所有調試信息
-g:none 不生成任何調試信息
-g:{lines,vars,source} 只生成某些調試信息
-nowarn 不生成任何警告
-verbose 輸出有關編譯器正在執行的操作的消息
-deprecation 輸出使用已過時的 API 的源位置
-classpath <路徑> 指定查找用戶類文件的位置
-cp <路徑> 指定查找用戶類文件的位置
-sourcepath <路徑> 指定查找輸入源文件的位置
-bootclasspath <路徑> 覆蓋引導類文件的位置
-extdirs <目錄> 覆蓋安裝的擴展目錄的位置
-endorseddirs <目錄> 覆蓋簽名的標准路徑的位置
-d <目錄> 指定存放生成的類文件的位置
使用-d參數,如類中定義了包,則編譯時會自動生成包, 如:javac -d . helloworld.java
表示在當前目錄下編譯Helloworld 類。.表示當前目錄,如helloword中定義有包,則在當前目錄下生成包:
-encoding <編碼> 指定源文件使用的字元編碼
-source <版本> 提供與指定版本的源兼容性
-target <版本> 生成特定 VM 版本的類文件
-version 版本信息
-help 輸出標准選項的提要
-X 輸出非標准選項的提要
-J<標志> 直接將 <標志> 傳遞給運行時系統
java
用法: java [-選項] 類 [參數...]
(執行一個類)
或者 java [-選項] -jar jar文件 [參數...]
(執行一個jar文件)
其中,可能的選項包括:
-client 選擇 "client" VM(ginger547:應該是指Virtual Machine)
-server 選擇 "server" VM
-hotspot 與 "client" VM同義 [不贊成]
默認情況的VM是client.
-cp <一個文件夾和zip/jar文件組成的類搜索路徑>
-classpath <一個文件夾和zip/jar文件組成的類搜索路徑>
一個由文件夾,JAR壓縮文件,或者ZIP壓縮文件組成的用來搜索類的列表
-D<名字>=<值>
設置一個系統屬性
-verbose[:class|gc|jni]
使詳細輸出變的可用
-version 列印產品版本然後退出
-version:<值>
只運行指定版本
-showversion 列印產品版本後繼續
-jre-restrict-search | -jre-no-restrict-search
在版本搜索的時候,包含/排除用戶私人的JRE
-? -help 列印幫助信息
-X 列印非標准選項幫助
-ea[:<包名>...|:<類名>]
-enableassertions[:<包名>...|:<類名>]
使斷言可用
-da[:<包名>...|:<類名>]
-disableassertions[:<包名>...|:<類名>]
是斷言不可用
-esa | -enablesystemassertions
使系統級斷言可用
-dsa | -disablesystemassertions
使系統級斷言不可用
-agentlib:<庫名>[=<選項>]
載入本地代理庫<庫名>,例如. -agentlib:hprof
同時可查看, -agentlib:jdwp=help和 -agentlib:hprof=help
-agentpath:<路徑名>[=<選項>]
通過全路徑名來載入本地代理庫
-javaagent:<jar路徑>[=<選項>]
載入Java編程語言代理,可查看 java.lang.instrument