一、堆內存相關配置
創新互聯建站服務項目包括夏邑網站建設、夏邑網站制作、夏邑網頁制作以及夏邑網絡營銷策劃等。多年來,我們專注于互聯網行業,利用自身積累的技術優勢、行業經驗、深度合作伙伴關系等,向廣大中小型企業、政府機構等提供互聯網行業的解決方案,夏邑網站推廣取得了明顯的社會效益與經濟效益。目前,我們服務的客戶以成都為中心已經輻射到夏邑省份的部分城市,未來相信會繼續擴大服務區域并繼續獲得客戶的支持與信任!
設置堆初始值
指令1:-Xms2g
指令2:-XX:InitialHeapSize=2048m
設置堆區最大值
指令1:`-Xmx2g`
指令2: -XX:MaxHeapSize=2048m
縮小堆內存的時機
-XX:MaxHeapFreeRatio=70//堆內存使用率大于70時擴張堆內存,xms=xmx時該參數無效,默認值70
擴張堆內存的時機
-XX:MinHeapFreeRatio=40//堆內存使用率小于40時縮減堆內存,xms=xmx時該參數無效,默認值40
新生代內存配置
指令1:-Xmn512m
指令2:-XX:MaxNewSize=512m
2個survivor區和Eden區大小比率
指令:-XX:SurvivorRatio=6 //S區和Eden區占新生代比率為1:6,兩個S區2:6
新生代和老年代的占比
-XX:NewRatio=4 //表示新生代:老年代 = 1:4 即老年代占整個堆的4/5;默認值=2
二、方法區內存配置常用參數
初始化的Metaspace大小,
-XX:MetaspaceSize :
Metaspace最大值
-XX:MaxMetaspaceSize
三、線程棧內存配置常用參數
每個線程棧最大值
指令1:-Xss256k
指令2:-XX:ThreadStackSize=256k
注意:
棧設置太大,會導致線程創建減少。
棧設置小,會導致深入不夠,深度的遞歸會導致棧溢出。
建議棧深度設置在3000-5000
四、配置垃圾收集器
Serial垃圾收集器(新生代)
開啟:-XX:+UseSerialGC
關閉:-XX:-UseSerialGC
//新生代使用Serial 老年代則使用SerialOld
ParNew垃圾收集器(新生代)
開啟 -XX:+UseParNewGC
關閉 -XX:-UseParNewGC
//新生代使用功能ParNew 老年代則使用功能CMS
Parallel Scavenge收集器(新生代)
開啟 -XX:+UseParallelOldGC
關閉 -XX:-UseParallelOldGC
//新生代使用功能Parallel Scavenge 老年代將會使用Parallel Old收集器
ParallelOl垃圾收集器(老年代)
開啟 -XX:+UseParallelGC
關閉 -XX:-UseParallelGC
//新生代使用功能Parallel Scavenge 老年代將會使用Parallel Old收集器
CMS垃圾收集器(老年代)
開啟 -XX:+UseConcMarkSweepGC
關閉 -XX:-UseConcMarkSweepGC
G1垃圾收集器
開啟 -XX:+UseG1GC
關閉 -XX:-UseG1GC
五、GC策略配置
GC并行執行線程數
-XX:ParallelGCThreads=16
新生代可容納的最大對象
-XX:PretenureSizeThreshold=1000000 //大于此值的對象直接會分配到老年代,設置為0則沒有限制。 //避免在Eden區和Survivor區發生大量的內存復制,該參數只對Serial和ParNew收集器有效,Parallel Scavenge并不認識該參數
進入老年代的GC年齡
進入老年代最小的GC年齡
-XX:InitialTenuringThreshol=7 //年輕代對象轉換為老年代對象最小年齡值,默認值7,對象在堅持過一次Minor GC之后,年齡就加1,每個對象在堅持過一次Minor GC之后,年齡就增加1
進入老年代最大的GC年齡
-XX:MaxTenuringThreshold=15 //年輕代對象轉換為老年代對象最大年齡值,默認值15
六、GC日志信息配置
配置GC文件路徑
-Xloggc:/data/gclog/gc.log//固定路徑名稱生成 -Xloggc:/home/GCEASY/gc-%t.log //根據時間生成
滾動生成日志
日志文件達到一定大小后,生成另一個文件。須配置Xloggc
開啟 -XX:+UseGCLogFileRotation
關閉 -XX:-UseGCLogFileRotation
-XX:NumberOfGCLogFiles=4 //滾動GC日志文件數,默認0,不滾動 -XX:GCLogFileSize=100k //GC文件滾動大小,需配置UseGCLogFileRotation,設置為0表示僅通過jcmd命令觸發
你輸入指令, vi -- help然后就會顯示,或者輸入man vi也是一樣的,:qx 開始記錄宏,并將結果存入寄存器x
q 退出記錄模式
@x 播放記錄在x寄存器中的宏命令
稍微解釋一下,當在normal模式下輸入:qx后,你對文本的所有編輯動作將會被記錄下來,再次輸入q即退出了記錄模
式,然后輸入@x對剛才記錄下來的命令進行重復,此命令后可跟數字,表示要重復多少次,比如@x20,可以重復20次。這個在文本的批處理中是非常有用的。
同時編輯多個文件
在vim眾多的插件中,有一個叫minibuffer的插件,就是下面所說的標簽頁功能了,可以支持同時編輯多個文件。
標簽命令
:tabe fn 在一個新的標簽頁中編輯文件fn
gt 切換到下一個標簽頁
gT 切換到上一個標簽頁
:tabr 切換到第一個標簽頁
:tabl 切換到最后一個標簽頁
:tabm [N] 把當前tab移動到第N個tab之后
對,正如你所想象的那樣,跟eclipse, ue等的標簽頁是一個意思!
窗口命令
ctrl+w s 水平分割窗口
ctrl+w w 切換窗口
ctrl+w q 退出當前窗口(由于同時有多個文件,此命令不會影響其他窗口)
ctrl+w v 垂直分割窗口
其他
vim在保存之前不會對文件做實際的修改,只是加載到緩沖區中,對文件的編輯其實是對緩沖區的編輯,直到:w時才會存入物理文件。
:e file 把file加載到新的緩沖區中
:bn 跳轉到下一個緩沖區
:bd 刪除緩沖區(關閉文件)
:sp fn 分割窗口,并將fn加載到新的窗口中
退出編輯器
:w 將緩沖區寫入文件,即保存修改
:wq 保存修改并退出
:x 保存修改并退出
:q 退出,如果對緩沖區進行過修改,則會提示
:q! 強制退出,放棄修改
查找替換
/pattern 向后搜索字符串pattern
?pattern 向前搜索字符串pattern
n 下一個匹配(如果是/搜索,則是向下的下一個,?搜索則是向上的下一個)
N 上一個匹配(同上)
:%s/old/new/g 搜索整個文件,將所有的old替換為new
:%s/old/new/gc 搜索整個文件,將所有的old替換為new,每次都要你確認是否替換
復制粘貼
dd 刪除光標所在行
dw 刪除一個字(word)
x 刪除當前字符
X 刪除前一個字符
D 刪除到行末
yy 復制一行,此命令前可跟數字,標識復制多行,如6yy,表示從當前行開始復制6行
yw 復制一個字
y$ 復制到行末
p 粘貼粘貼板的內容到當前行的下面
P 粘貼粘貼板的內容到當前行的上面
]p 有縮進的粘貼,vim會自動調節代碼的縮進
"a 將內容放入/存入a寄存器,可以支持多粘貼板
附:比如常用的一個寄存器就是系統寄存器,名稱為+,所以從系統粘貼板粘貼到vim中的命令為"+p,注意此處的+不表示操作符,二十一個寄存器。
移動光標
在vim中移動光標跟其他的編輯器中有很大的區別,不過一旦學會了,就會飛速的在文本中移動了。
h,j,k,l 上,下,左,右
ctrl-f 上翻一頁
ctrl-b 下翻一頁
% 跳到與當前括號匹配的括號處,如當前在{,則跳轉到與之匹配的}處
w 跳到下一個字首,按標點或單詞分割
W 跳到下一個字首,長跳,如end-of-line被認為是一個字
e 跳到下一個字尾
E 跳到下一個字尾,長跳
b 跳到上一個字
B 跳到上一個字,長跳
0 跳至行首,不管有無縮進,就是跳到第0個字符
^ 跳至行首的第一個字符
$ 跳至行尾
gg 跳至文件的第一行
gd 跳至當前光標所在的變量的聲明處
[N]G 跳到第N行,如0G,就等價于gg,100G就是第100行
fx 在當前行中找x字符,找到了就跳轉至
; 重復上一個f命令,而不用重復的輸入fx
tx 與fx類似,但是只是跳轉到x的前一個字符處
Fx 跟fx的方向相反
),( 跳轉到上/下一個語句
* 查找光標所在處的單詞,向下查找
# 查找光標所在處的單詞,向上查找
`. 跳轉至上次編輯位置
在屏幕上移動
H 移動光標到當前屏幕上最上邊的一行
M 移動光標到當前屏幕上中間的一行
L 移動光標到當前屏幕上最下邊的一行
書簽
ma 把當前位置存成標簽a
`a 跳轉到標簽a處
編輯
r 替換一個字符
J 將下一行和當前行連接為一行
cc 刪除當前行并進入編輯模式
cw 刪除當前字,并進入編輯模式
c$ 擦除從當前位置至行末的內容,并進入編輯模式
s 刪除當前字符并進入編輯模式
S 刪除光標所在行并進入編輯模式
xp 交換當前字符和下一個字符
u 撤銷
ctrl+r 重做
. 重復上一個編輯命令
~ 切換大小寫,當前字符
g~iw 切換當前字的大小寫
gUiw 將當前字變成大寫
guiw 將當前字變成小寫
將當前行右移一個單位
將當前行左移一個單位(一個tab符)
== 自動縮進當前行
插入模式
i 從當前光標處進入插入模式
I 進入插入模式,并置光標于行首
a 追加模式,置光標于當前光標之后
A 追加模式,置光標于行末
o 在當前行之下新加一行,并進入插入模式
O 在當前行之上新加一行,并進入插入模式
Esc 退出插入模式
可視模式
標記文本
v 進入可視模式,單字符模式
V 進入可視模式,行模式
ctrl+v 進入可視模式,列模式,類似于UE的列模式
o 跳轉光標到選中塊的另一個端點
U 將選中塊中的內容轉成大寫
O 跳轉光標到塊的另一個端點
aw 選中一個字
ab 選中括號中的所有內容,包括括號本身
aB 選中{}括號中的所有內容
ib 選中括號中的內容,不含括號
iB 選中{}中的內容,不含{}
對標記進行動作
塊右移
塊左移
y 復制塊
d 刪除塊
~ 切換塊中內容的大小寫
Linux 使用jstat命令查看jvm的GC情況
命令格式
jstat命令命令格式:
jstat [Options] vmid[interval] [count]
參數說明:
Options,選項,我們一般使用 -gcutil 查看gc情況
vmid
,VM的進程號,即當前運行的java進程號
interval
,間隔時間,單位為秒或者毫秒
count
,打印次數,如果缺省則打印無數次
示例說明
示例
通常運行命令如下:
jstat -gc 12538 5000
即會每5秒一次顯示進程號為12538的java進成的GC情況,
顯示內容如下圖:
結果說明
S0C:年輕代中第一個survivor(幸存區)的容量 (字節)
S1C
:年輕代中第二個survivor(幸存區)的容量 (字節)
S0U
:年輕代中第一個survivor(幸存區)目前已使用空間 (字節)
S1U
:年輕代中第二個survivor(幸存區)目前已使用空間 (字節)
EC
:年輕代中Eden(伊甸園)的容量 (字節)
EU
:年輕代中Eden(伊甸園)目前已使用空間 (字節)
OC
:Old代的容量 (字節)
OU
:Old代目前已使用空間 (字節)
PC
:Perm(持久代)的容量 (字節)
PU
:Perm(持久代)目前已使用空間 (字節)
YGC
:從應用程序啟動到采樣時年輕代中gc次數
YGCT
:從應用程序啟動到采樣時年輕代中gc所用時間(s)
FGC
:從應用程序啟動到采樣時old代(全gc)gc次數
FGCT
:從應用程序啟動到采樣時old代(全gc)gc所用時間(s)
GCT
:從應用程序啟動到采樣時gc用的總時間(s)
NGCMN
:年輕代(young)中初始化(最小)的大小 (字節)
NGCMX
:年輕代(young)的最大容量 (字節)
NGC
:年輕代(young)中當前的容量 (字節)
OGCMN
:old代中初始化(最小)的大小 (字節)
OGCMX
:old代的最大容量 (字節)
OGC
:old代當前新生成的容量 (字節)
PGCMN
:perm代中初始化(最小)的大小 (字節)
PGCMX
:perm代的最大容量 (字節)
PGC
:perm代當前新生成的容量 (字節)
S0
:年輕代中第一個survivor(幸存區)已使用的占當前容量百分比
S1
:年輕代中第二個survivor(幸存區)已使用的占當前容量百分比
E
:年輕代中Eden(伊甸園)已使用的占當前容量百分比
O
:old代已使用的占當前容量百分比
P
:perm代已使用的占當前容量百分比
S0CMX
:年輕代中第一個survivor(幸存區)的最大容量 (字節)
S1CMX
:年輕代中第二個survivor(幸存區)的最大容量 (字節)
ECMX
:年輕代中Eden(伊甸園)的最大容量 (字節)
DSS
:當前需要survivor(幸存區)的容量 (字節)(Eden區已滿)
TT
: 持有次數限制
MTT
: 最大持有次數限制
linux基本命令:(其他的太多了,自己去百度吧)
ls:
-l:顯示詳細信息
-a:顯示隱藏文件和其他所有文件(以.開頭的為隱藏文件)
-t:安時間排序
-h:以KB MB 等單位顯示
-d:只列出目錄名,不列出其他內容
-R:遞歸顯示所有目錄及子目錄
-lath:選項可以合并
pwd:顯示當前所在位置
cd:轉換目錄
cd ..:返回上一級目錄
cd -:回到上一次操作的目錄
mkdir: 建目錄
-v:顯示所建目錄,相同可用{}:mkdir -v dir{1,2,3}
-p:創建多級目錄
rmdir:刪除空目錄
rm:刪除
-f:強制刪除無提示
-r:可刪除目錄
mv:移動 重命名
touch:建立空文件
file:驗證文件或目錄的類型
cp:復制,粘貼 (copy)改名
cp 原文件 目標文件
-r:可復制目錄
ssh 192.168.1.33 遠程登錄
跨機拷貝:scp -r /root/Server/ 192.168.1.253:/dcw
man 命令:幫助
alias:查看是否有別名
去掉別名用完整路徑
eg:
#which cp
#/bin/cp a.text b.text 或 \cp a.text b.text
或 在 /root/.bashrc 中去掉#alias cp='cp -i',后#unalias cp
查看某文件前4行內容并顯示文件路徑和文件名
[/usr/local/nagios]#ls /etc/vsftpd/vsftpd.conf head -n 4 /etc/vsftpd/vsftpd.conf
/etc/vsftpd/vsftpd.conf
# Example config file /etc/vsftpd/vsftpd.conf
#
# The default compiled in settings are fairly paranoid. This sample file
# loosens things up a bit, to make the ftp daemon more usable.
linux tee 命令詳解
功能說明:讀取標準輸入的數據,并將其內容輸出成文件。
語法:tee [-ai][--help][--version][文件...]
補充說明:tee指令會從標準輸入設備讀取數據,將其內容輸出到標準輸出設備,同時保存成文件。
參數:
-a或--append 附加到既有文件的后面,而非覆蓋它.
-i-i或--ignore-interrupts 忽略中斷信號。
--help 在線幫助。
--version 顯示版本信息。
cat /etc/sysconfig/network
-n:查看行號信息
more:空格翻頁 回車換行
less:上下鍵翻頁 可以反復看(可以回翻頁)
head:顯示前幾行
head -5 install.log 顯示前5行
tail:顯示后幾行
tail -f 動態更新
grep:查看文件中包含關鍵字的一行
#grep --color=tty dump intstall.log 彩色顯示
正則表達式:^root 以root為開頭(^)
root$,以root結尾($)
-v:不包括的幾行(取反)
grep -n -v ^# /etc/vsftpd/vsftpd.conf
:r /root/install.log 追加讀入一個文件
:e 讀入文件
:e! 重新讀入
:q 不保存 :q!強制退出
:w 保存 :qw保存退出 :wq! 強制保存退出
在未寫入狀態時:
h 左 k 上 j下 l 右
shift+4($) 光標移到行尾 shift+6(^) 光標移到行頭
:50 來到50行
#vim /root/install.log +50(n)來到50行
:set nu 顯示行號
:set nonu 取消行號
shift+g 來到行尾
n(無顯示)+G:直接來到n行
shift+a:自動來到行尾輸入
:50,100 w bb.txt 保存50到100行的內容到bb.txt中
r :替換單個字符 R:替換全行
shift+o:向上插入 o:向下插入
yy 復制 p 粘貼
(n)2yy 復制前兩行
y^:復制從光標位置到開頭 y$:復制從光標位置到結尾
d:剪貼一行
dd:剪貼兩行
ndd:多行
d^:剪貼到開頭 d$:剪貼到結尾
:g/^$/d 去掉空行
:g/^\s*$/d 去空格
向左移動25個字符:25+l
:/ 查找 自上而下
:? 查找自下而上
n 下一個
替換:
:s/old/new 把舊的換為新的 單個
:s/old/new/g 整行替換
:%s/old/new/g 整個文件替換
:%s/old/new/gc 整個文件替換并詢問
u:替換上次命令
ctrl+r 重做
ctrl+^ 兩個切換
打開多個文件
vim a.txt b.txt c.txt
:args 可選
:next
:prev
:last
vim diff a.txt b.txt
ctrl+w+w 跳到第二個文件
:wqa
使用vimtutor工具聯系vim使用。
vimtutor工具使用方法:
vimtutor zh
如果出現亂馬,使用下面命令解決(只能執行一次)
cd /usr/share/vim/vim70/tutor
mv tutor.zh.euc tutor.zh.euc.bak
iconv -f gb2312 -t utf-8 tutor.zh.euc.bak tutor.zh.euc
vimtutor zh
locate :空間換時間
updatedb
locate passwd
find [路徑] [參數] [表達式]
find /usr/share/doc -name filename
-user:根據文件擁有者尋找文件
-group:根據文件所屬組尋找文件
-name:根據文件名尋找文件
-perm:根據文件權限尋找
-size:根據文件大小尋找
-type:根據文件類型尋找文件,參數對應c b l f d
find 的表達式使用通配符時需要使用“”圈界
find 目錄 條件 條件
[root@localhost ~]# find / -name "pass*"
當前目錄:.
find . -name "*ss*"
find . -type f(文件)
find . -type d(目錄)
[root@localhost ~]# find . -nouser(文件無屬主)
[root@localhost ~]# find . -nogroup(文件無屬組)
[root@localhost ~]# find /home/ -user/group user1
-exec
[root@localhost ~]# find . -nouser -exec rm {} \;
{}代表文件和目錄
\轉義字符
-ok
find . -nogroup -ok rm -rf {} \;有提示刪除
[root@localhost ~]# stat a
File: “a”
Size: 0 Blocks: 0 IO Block: 4096 一般空文件
Device: 803h/2051d Inode: 261796 Links: 1
Access: (0644/-rw-r--r--) Uid: ( 0/ root) Gid: ( 0/ root)
Access: 2011-04-02 14:23:25.000000000 +0800(創建時間:-atime)
Modify: 2011-04-02 14:23:25.000000000 +0800(修改時間:-mtime)
Change: 2011-04-02 14:23:25.000000000 +0800(改變屬組屬主會變:-ctime)
find /root -mtime -5(5天以內) 5(5天時) +5(5天前)
find . -perm 400:要求權限全部匹配,精確匹配
find . -perm +600(wr):有w,r中任意權限的都會列出,即會列出200 400 600 的權限
find . -perm -600 :要求權限完全滿足 權限大于等于600
-name -type
-name -user
-perm -type
-nouser
-nogroup
-mtime
-exec
-ok
-rgex(正則表達式)
obj文件,也就是常說的.o文件
比如下面的指令會產生app.o文件
]$gcc -c app.c
這個是從源代碼變成obj文件,這個過程叫編譯。
如果app.c里面有main函數,又不依賴其他庫文件,那么下面的指令生成執行文件
]$gcc -o app app.o
這就是從.o文件變成執行文件,這個過程叫鏈接。
linux的關機命令主要有shutdown、halt、reboot、init。shutdown是一種比較安全的關機方法,可以在關機之前通知所有當前登錄用戶并且阻止用戶的登錄,可以安全關閉后臺的進程。可以通過很多的參數來配置具體的功能。halt:起功能等同于shutdown -h,殺死應用進程,執行sync系統調用,文件系統的些操作完成后會停止內核reboot:起功能類似于halt,只不過關機之后進行重啟。init:init進程是所有進程的祖先,其進程號始終為1,可以發信號給init進程來實現關機操作,shutdown就是此種實現方式。 linux的基本指令1.exit:這個指令是退出系統,但不是關機,linux中有很多作業,當你等入后相當于一個作業,當你等出時,作業停止,但其它作業還在進行,只有關機才行。
2.date:顯示當前日期
格式化日期:date +%y/%m/%d
3.cal: 顯示日歷
格式化日歷:cal [month] [year]
4.bc: 內置計算器
5.man: 求助了!與info類似
man [command]
6.shutdown: 這就是關機了
shutdown -t sec: shutdown -t 10 10秒關機
shutdown -k message:shutdown -k I WILL SHUTDOWN 不真的關機,只是發個消息I WILL SHUTDOWN
shutdown -c 取消當前已經在執行的關機指令
shutdown -h time:shutdown -h 20:20 停止系統的服務,在20:20關機
shutdown -r time:shutdown -r now 停止系統的服務,然后重新開機
7.reboot :重啟,與shutdown -r now
8.目錄文件權限
chgrp groupname file/directory: chgrp uranus1 a 變更a文件的組為uranus1
chmod xyz file/directory: chmod 777 a 變更a文件的權限為-rwxrwxrwx
chown user file/directory: chown uranus1 a 變更a文件的擁有者為uranus1
umask 文件或目錄時的默認權限
umask:查看
umask xyz:設定
9.cd [相對路徑或絕對路徑]
10. pwd 顯示當前路徑
11. mkdir/rmdir 建立目錄/刪除目錄
12. ls 顯示文件名稱,屬性等
ls -a 列出所有文件(連同隱藏文檔)
ls -l 詳細列出
ls -s 以文件大小排序
13. cp [souce] [object]進行復制
cp -d
cp -r 可以進行目錄的復制
cp -s 做成聯接文件,與ln功能相同
cp -u 如果源文件新才會復制
14. rm [文件名] 刪除文件
rm -i 用戶確認
rm -r 循環刪除
rm -f 強制刪除
15. mv [souce] [object]移動
16. 查看文件內容
cat [文件] 查看文件內容
tac [文件] 最后一行顯示
more/less [文件] 顯示文件
head/tail -n [文件] 從頭或尾開始看文件N行
nl 與cat類似
od 讀非ASCii數據文件
17. chattr與Isattr 文件的安全性相關
chattr [+-=] [ASacdistu] [file/directory]
+-=:分別增加,減少,設定屬性
A :存取時間atime不能修改
18. 搜索文件
which [文件名] 查看可執行文件的位置
whereis [目錄名稱]
-a :找二進制文件
-m:說明文件manual路徑下的文件
-s:只找source 源文件
-n:沒有說明文檔文件
locate [目錄名稱]
find [路徑] [參數]
1.時間:
-atime n:n*24小時內存取過的文件全部列出來
-ctime n:n*24小時內改變,新增的文件或目錄列出來
-mtime n:n*24小時內修改過的文件列出來
-newer file:把比file還要新的文件列出來
2.使用名字
-gid n:尋找群組ID為N的文件
-group name:尋找群組名稱為name的文件
-uid n:尋找擁有者ID為N的文件
-user name:尋找用戶名稱為name的文件
-name file:尋找文件名為file的文件名稱
-type type:尋找文件屬性為type的文件,包含b,c,d,p,l,s(接口設備b,端口設備c,目錄d,聯接文件l)
19. vi基本操作(光標移動的不用多講)
查找與替換
/word 在光標之后查找一個名為word的字符串
?word 在光標之前查找一個名為word的字符串
n1,n2s/word1/word2/g 在n1行到n2行之間的查找與替換
1,$s/word1/word2/gc 在1到最后一行這間的查找與替換,并在換時要確認。
命令行模式:
w: 保存
w!:若文件只讀,剛強制寫
q:退出
wq:
w[filename]:將數據放在另一個文件中
r[filename]:讀入另一個文件的數據。
set nu:加入行
set nonu:與set nu 相反
n1,n2 w[filename]:從n1到n2的內容保存為filename這個文件。
本文題目:linux執行gc命令,linux gc命令
路徑分享:http://vcdvsql.cn/article12/hegpdc.html
成都網站建設公司_創新互聯,為您提供網頁設計公司、響應式網站、用戶體驗、網站排名、Google、電子商務
聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯