導航:首頁 > 文件處理 > go程序解壓文件加速

go程序解壓文件加速

發布時間:2023-02-07 01:29:13

Ⅰ 解壓縮文件Golang的簡便方法問題,怎麼解決

golang生成的json是格式化後的,有沒有提供方法壓縮一下 那些空格換行也佔用不了多少空間, 要壓縮可以自己寫個正則, 把那些空格、換行去掉就行了。

linux的這個go文件怎麼解壓

go語言寫的,是編譯運行的話,那就是反編譯了,不然不成;除非得到的是源文件……
若是解釋執行,直接就能看見代碼了唄

Ⅲ GO瀏覽器為何訪問速度如此的慢

WINXP優化精髓
加快開機與關機的速度:

①選「開始\運行」,鍵入Regedit,展開HKEY_CURRENT_USER\Control Panel\Desktop,將字元串值「HungAppTimeout」的數值更改為200,再將字元串值「WaitToKillAppTimeout」的數值數據更改為1000;

②另在HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control下,將字元串值「HungAppTimeout」的數值數據更改為200,將字元串值「WaitToKillServiceTimeout」的數值數據更改為〔1000〕;

③使用微軟 Bootvis.exe 優化啟動速度。我們到微軟官方網站先下載 bootVis.exe,然後解壓後運行bootvis.exe,之後在Trace下選next boot和driver delays等,此後XP會重新啟動,並將記錄啟動數據產生成BIN的文件。再在「file\open中打開這個文件,在Trace下選Optimize system即可。
提示:此優化需時頗長,請耐心等待。

清除注冊表內不用的DLL文件:

在〔開始〕\〔運行〕\鍵入〔Regedit〕\〔HKKEY_LOCAL_MACHINE〕\〔SOFTWARE〕\〔Microsoft〕\〔Windows〕\〔CurrentVersion〕\〔Explorer〕
增加一個機碼〔AlwaysUnloadDLL〕默認值為〔1〕
如默認值設定為〔0〕則代錶停用此功能

加快寬頻連接速度:

在〔開始〕\〔運行〕\鍵入〔regedit〕\在〔HKEY_LOCAL_MACHINE〕\〔SOFTWARE〕\〔Policies〕\〔Microsoft〕 \〔Windows〕
增加一個名為〔Psched〕的機碼
在〔Psched〕右面窗口增加一個 Dword 值〔NonBestEffortLimit〕數值數據為〔0〕
『僅適用用 Windows XP 家用版本』

加快菜單顯示速度:

在〔開始〕\〔運行〕\鍵入〔Regedit〕\〔HKEY_CURRENT_USER〕\〔Control Panel〕\〔Desktop〕\將字元串值〔MenuShowDelay〕的數值數據更改為〔0〕
調整後如覺得菜單顯示速度太快而不適應者可將〔MenuShowDelay〕的數值數據更改為〔200〕
重新啟動生效 。

加快自動更新率:

在〔開始〕\〔運行〕\鍵入〔Regedit〕\〔HKEY_LOCAL_MACHINE〕\〔System〕\〔CurrentControlSet〕\〔Control〕\〔Update〕\將 Dword〔UpdateMode〕的數值數據更改為〔0〕。重新啟動生效。

關閉啟動時載入不需要的程序:

如開機時有太多的程序要運行會影響開機的速度,先檢查哪些些檔案會在開機時運行
在〔開始〕\〔運行〕\鍵入〔msconfig〕\選〔啟動〕
在啟動內的程序是代表開機時要運行的程序,如需暫時停止運行某些程序便取消在〔□〕的〔X〕符號便可,如想恢復開機時運行此程序在〔□〕內加回〔X〕符號便可。

停用不需要的服務:
在〔開始〕\〔運行〕\鍵入〔services.msc〕打開服務窗口
檢查右邊窗口將不需要的服務在〔啟動類型〕內選〔已禁止〕;再在〔服務狀態〕中選〔停用〕

善用 CPU 的 L2 Cache 加快整體效能:

在〔開始〕\〔運行〕\鍵入〔Regedit〕\〔HKEY_LOCAL_MACHINE〕\〔SYSTEM〕\〔CurrentControlSet〕\〔Control〕\〔SessionManager〕\在〔MemoryManagement〕的右邊窗口將〔SecondLevelDataCache〕的數值數據更改為與 CPU L2 Cache 相同的十進制數值
例:P4 1.6G 的 L2 Cache 為 256Kb,數值數據更改為十進制數值 256
有關 L2 Cache 的數值並非如某些不負責任的網頁亂抄過來,例如 P4 1.6G 的 L2 Cache 為 256Kb,但 P4 1.6GA 的 L2 Cache 為 512Kb
讀者可以通過網路查詢到有關 CPU 的 L2 Cache 的資料。

在啟動計算機時運行 Defrag 程序 :

在〔開始〕\〔運行〕\鍵入〔Regedit〕\〔HKEY_LOCAL_MACHINE〕\〔SOFTWARE〕\〔Microsoft〕\〔Dfrg〕\〔BootOptimizefunction 〕
將字元串值〔Enable〕設定為〔Y〕等於開啟,而設定為〔N〕等於關閉。

減少多重啟動時等待時間:

方法一:用 Notepad 打開在 C:\ 目錄下的 boot.ini 檔案,將內容〔timeout〕的設定值由預設的 30 (秒) 改為要求等待的秒數數字,存檔。
方法二:也可以通過〔開始〕\〔運行〕\鍵入〔msconfig〕,打開boot.ini 選項,進行秒數的修改。
方法三:右鍵點擊「我的電腦」,選擇屬性\高級\啟動和故障恢復\設置,在此修改啟動等待時間。

關閉 XP 內設的燒碟功能:

如果不打算使用此功能可將其關閉,可加快使用 Nero 燒錄軟體的速度,因為Windows XP 的燒錄系統由 Roxio 公司提供 (即與 Easy Cd Creator 同公司)。
在〔控制面板〕\〔管理工具〕\〔服務〕\在右邊窗口選〔IMAPI CD-Burning COM Service〕\〔啟動類型〕\選〔已停用〕

關機時自動關閉停止響應程序:

在〔開始〕\〔運行〕\鍵入〔Regedit〕\〔HKEY_USERS〕\〔.DEFAULT〕\〔Control Panel〕\在〔Desktop〕右面窗口將〔AutoEndTasks〕的數值資料改為〔1〕
注銷或重新啟動即可。

移除Windows Messenger:

先用 Wordpad 打開 X:\WINDOWS\inf 下的 sysoc.inf 檔案
X=(XP所在的磁碟區)
將內容〔msmsgs=msgrocm.dll,OcEntry,msmsgs.inf,hide,7〕
更改為〔msmsgs=msgrocm.dll,OcEntry,msmsgs.inf,7〕
存檔及退出
然後在〔控制面板〕\〔添加或刪除程序〕\〔添加/刪除 Windows 組件〕\不選〔Windows Messenger〕\〔下一步〕\〔完成〕後便成功移除。

停止「磁碟空間不足」的通知 :

當磁碟驅動器的容量少於 200MB 時 Windows XP 便會發出「磁碟空間不足」的通知
如需停止此功能,可按下面程序更改登錄文件
在〔開始〕\〔運行〕\鍵入〔Regedit〕\〔HKEY_LOCAL_MACHINE〕\〔Software〕\〔Microsoft〕\〔Windows〕\〔CurrentVersion〕\在〔Policies〕下增加一個機碼名〔Explorer〕(如果已有便不用增加)\在〔Explorer〕增加一個 DWORD 值〔NoLowDiskSpaceChecks〕
數值數據為〔1〕= 停止通知,值數據為〔0〕= 默認值啟動通知

關閉 windows 自動更新 :

滑鼠右點〔我的電腦〕\〔內容〕\〔自動更新〕
選「關閉自動更新,我要手動更新我的計算機」

關閉啟動時窗口標志畫面:

在〔開始〕\〔運行〕\鍵入〔msconfig〕\選〔boot.ini〕
然後在〔啟動選項〕內選〔NOGUIBOOT]
重新開機便沒有了窗口標志的畫面

使用 Windows Media Player 9 播放 DVD 盤:
在〔開始〕\〔運行〕\鍵入〔DVDPlay〕便會出現 Windows Media Player
按播放 VCD 型式操作便可播放 DVD 了,當然你一定要有 DVDRom 裝置
如果還出現問題,在〔開始〕\〔運行〕\鍵入〔regedit〕\選〔HKEY_CURRENT_USER〕
\〔Software〕\〔Microsoft〕\〔MediaPlayer〕\〔Player〕\在〔Settings〕右邊窗口
增加一個字元串值〔EnableDVDUI〕數值數據為〔yes〕

關閉自動重新啟動功能:

當 Windows XP 遇到嚴重問題時便會突然重新開機,按下更改可以取消此功能
在〔開始〕\〔運行〕\鍵入〔regedit〕\選〔HKEY_LOCAL_MACHINE〕\〔SYSTEM〕
\〔CurrentControlSet〕\〔Control〕\〔CrashControl〕\將〔AutoReboot〕dword 值更改為〔0〕重新開機生效

移除共享文檔:

除正常〔我的文檔〕及〔共享文檔夾〕外,每個用戶都會有一個獨立的活頁夾,
如下設定則只會保留我的活頁夾,其餘的不會顯示出來
在〔開始〕\〔運行〕\鍵入〔regedit〕\選〔HKEY_LOCAL_MACHINE〕\〔SOFTWARE〕
\〔Microsoft〕\〔Windows〕\〔CurrentVersion〕\〔Explorer〕\〔MyComputer〕\〔NameSpace〕\在〔DelegateFolders〕下刪除〔{59031a47-3f72-44a7-89c5-5595fe6b30ee}〕機碼

取消 IE 自動縮圖功能:

Internet Explorer 6 在瀏覽圖片如大出屏幕,圖片便會自動縮小如需取消這功能可按如下修改:
在〔開始〕\〔運行〕\鍵入〔regedit〕\〔HKEY_CURRENT_USER〕\〔Software〕\〔Microsoft〕\〔Internet Explorer〕\在〔Main〕增加一個字元串值〔Enable AutoImageResize〕數據數值為〔NO〕

讓 IE6 可以同時下載超過兩個檔案:
Internet Explorer 6 同時最多隻可以下載兩個檔案,
按下修改可同時下載多達十個檔案
在〔開始〕\〔運行〕\鍵入〔regedit〕\〔HKEY_CURRENT_USER〕\〔\Software〕\〔Microsoft〕\〔Windows〕\〔CurrentVersion〕\〔InternetSettings〕
在右邊窗口增加下列兩個〔Dword〕值
〔MaxConnectionsPer1_0Server〕數值資料為〔0000000a〕即十進制〔10〕
〔MaxConnectionsPerServer〕數值資料為〔0000000a〕即十進制〔10〕
重新啟動計算機生效
[轉帖]我的WinXP優化之路〔推薦〕
轉貼〕我的WinXP優化之路〔推薦〕

為了達到這個目的,我們主要從四個方面入手:
1、減少磁碟空間佔用
2、終止不常用的系統服務
3、安全問題
4、另外一些技巧
首先問一下,你是不是很想激活XP,不。。。准確的說你是不是想在ms的站上能夠升級。如果答案是肯定的話,那我們就先來探討一下安裝的問題,目前流行的V4、V5、V6版本我還是比較推薦的,尤其是V5和V6這兩個。安裝的過程中有個序列號的問題,我建議你先在機子上算好,然後用這個序列號安裝,通常這樣安裝的XP都可以到MS的站點自由更新。
如果你是已經安裝好的XP了,但用的序列號是里到處流傳人人都用的那些,也沒關系,我們後面會說用sysrep來重新封裝的時候會解決序列號更換的問題。

我假設你已經安裝完XP了,come on baby ~~

一、瘦身行動

1、在各種軟硬體安裝妥當之後,其實XP需要更新文件的時候就很少了。刪除系統備份文件吧:開始→運行→sfc.exe /purgecache 近3xxM。

2、刪除驅動備份: %windows%\driver cache\i386目錄下的driver.cab文件,通常這個文件是76M。

3、偶沒有看help的習慣,所以保留著%windows%\help目錄下的東西對我來說是一種傷害,呵呵。。。都幹掉,近4xM。

4、一會在升級完成後你還會發現%windows%\多了許多類似$NtUninstallQ311889$這些目錄,都幹掉吧,1x-3xM。

5、正好硬碟中還有win2000/server等,所以順便把pagefile.sys文件都指向一個地方:控制面板→系統→性能—高級→虛擬內存→更改,注意要點「設置」才會生效。

6、卸載不常用組件:用記事本修改\%windows%\inf\sysoc.inf,用查找/替換功能,在查找框中輸入,hide,全部替換為空。這樣,就把所有的,hide都去掉了,存檔退出後再運行「添加-刪除程序」,就會看見「添加/刪除 Windows 組件」中多出不少選項;刪除掉游戲啊,碼表啊等不用的東西。

7、刪除\windows\ime下不用的輸入法,8xM。我重新安裝了自己用的zrm輸入法,赫赫。

8、如果實在空間緊張,啟用NTFS的壓縮功能,這樣還會少用2x% 的空間,不過我沒作。

9、關了系統還原,這破功能對我這樣常下載、測試軟體的人來說簡直是災難,用滑鼠右健單擊桌面上的「我的電腦」,選擇「屬性」,找到「系統還原」,選擇「在所有驅動器上關閉系統還原」呵呵,又可以省空間了。

10、還有幾個文件,挺大的,也沒什麼用。。。。忘了名字 :( ,剛安裝的系統可以用查找功能查找大於50M的文件來看看,應該能找到的。

如果你能按照上面的過程做完,你的原本1.4G的XP,完全可以減少到800以下。

二、加速計劃

WinXP的啟動會有許多影響速度的功能,盡管ms說已經作最優化處理過,但對我們來說還是有許多可定製之處。我一般是這樣來做的。

1、修改注冊表的run鍵,取消那幾個不常用的東西,比如Windows Messenger 。啟用注冊表管理器:開始→運行→Regedit→找到「HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run\MSMSGS」 /BACKGROUND 這個鍵值,右鍵→刪除,世界清靜多了,順便把那幾個什麼cfmon的都幹掉吧。

2、修改注冊表來減少預讀取,減少進度條等待時間,效果是進度條跑一圈就進入登錄畫面了,開始→運行→regedit啟動注冊表編輯器,找HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Memory Management\PrefetchParameters, 有一個鍵EnablePrefetcher把它的數值改為「1」就可以了。另外不常更換硬體的朋友可以在系統屬性中把匯流排設備上面的設備類型設置為none(無)。

3、關閉系統屬性中的特效,這可是簡單有效的提速良方。點擊開始→控制面板→系統→高級→性能→設置→在視覺效果中,設置為調整為最佳性能→確定即可。這樣桌面就會和win2000很相似的,我還是挺喜歡XP的藍色窗口,所以在「在窗口和按鈕上使用視覺樣式」打上勾,這樣既能看到漂亮的藍色界面,又可以加快速度。

4、我用Windows commadner+Winrar來管理文件,Win XP的ZIP支持對我而言連雞肋也不如,因為不管我需不需要,開機系統就打開個zip支持,本來就閑少的系統資源又少了一分,點擊開始→運行,敲入:「regsvr32 /u zipfldr.dll」雙引號中間的,然後回車確認即可,成功的標志是出現個提示窗口,內容大致為:zipfldr.dll中的Dll UnrgisterServer成功。

5、據說XP的一個系統服務Qos,這個調度要佔用一定的網路帶寬,像我這樣的一毛不拔的人是無法忍受的,去掉方法是:開始菜單→運行→鍵入 gpedit.msc ,出現「組策略」窗口, 展開 "管理模板」→「網路」 , 展開 "QoS 數據包調度程序", 在右邊窗右鍵單擊「限制可保留帶寬" ,在屬性中的「設置」中有「限制可保留帶寬" ,選擇「已禁用」,確定即可。當上述修改完成並應用後,用戶在網路連接的屬性對話框內的一般屬性標簽欄中如果能夠看到"QoS Packet Scheler(QoS 數據包調度程序)"。說明修改成功,否則說明修改失敗,順便把網路屬性中的那個Qos 協議也一起幹掉(卸載)吧。

6、快速瀏覽區域網絡的共享
通常情況下,Windows XP在連接其它計算機時,會全面檢查對方機子上所有預定的任務,這個檢查會讓你等上30秒鍾或更多時間。去掉的方法是開始→運行→Regedit→在注冊表中找到HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\Current Version\Explorer\RemoteComputer\NameSpace。在此鍵值下,會有個{ D6277990-4C6A-11CF-8D87-00AA0060F5BF }鍵,把它刪掉後,重新啟動計算機,Windows XP就不再檢查預定任務了,hoho~~~ ,速度明顯提高啦!

7、關掉調試器Dr. Watson
我好像從win95年代開始一次也沒用過這東西,可以這樣取消:打開冊表,找到HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\AeDebug子鍵分支,雙擊在它下面的Auto鍵值名稱,將其「數值數據」改為0,最後按F5刷新使設置生效,這樣就取消它的運行了。沿用這個思路,我們可以把所有具備調試功能的選項取消,比如藍屏時出現的memory.dmp,在「我的電腦→屬性→高級→設置→寫入調試信息→選擇無」等等。

8、被我終止的服務列表以及相關說明

1)alerter 錯誤警報
2)automatic updates windows 自動更新
3)background intelligent transfer service 微軟說使用空閑的網路帶寬傳數據
4)clipbook 與遠程電腦來共享剪貼板內容,我看還是免了吧
5)Computer browser 說什麼要維護網路更新列表
6)DHCP client 我不需要這東西
7)Distributed link tracking client 保持區域網連接更新等信息,偶很少用區域網,這東西佔用4M左右內存。
8)Distributed Transaction coordinator 協調xxx,和上面的差不多
9)DNS Client 我不需要這東西
10)Error reporting service 錯誤報告
11)Event Log 系統日誌紀錄
12)Fast user switching compatibility 用戶切換
13)help and support 幫助
14)Human interface device access 據說是智能設備。。。
15)IMAPI CD-burning COM service 偶不用這個刻碟
16)Indexing service 索引,索引什麼呢?
17)Internet Connection Firewall(ICF) ICF防火牆
18)IPSEC Services 這個我不懂,你想知道問Quack去
19)Logical Disk manager administrative service 配置磁碟
20)messenger 好像net send 等東西用的就是這個功能
21)MS software shadow provider 卷復制備份的
22)Net Logon 我可不想讓黑客遠程登錄進來,關!
23)Netmeeting remote desktop sharing 我不用netmeeting
24)Network DDE 動態數據交換傳輸
25)Network DDE DSDM 和上面差不多
26)Network Location Awareness 關,我的機子不作共享
27)NTLM Security support provider-telnet 呵呵,關!
28)Performance logs and alert 將系統狀態寫日誌或發警告
29)Portable media serial number 關!
30)Print Spooler 列印機,不幸的是我的機子不連接Print ~
31) QoS RSVP 關!
32)Remote desktop help session manager 遠程幫助服務
33)remote Procere Call LOCATOR 管理RPC
34)remote registry 遠程管理注冊表
35)removable storage
36)routing and remote access 我乾脆禁用了它
37)security accounts manager 我的系統只是一個客戶系統,不用iis。
38)smart card
39)smart card helper 關!!!
40)SSDP Discovery service 我用不到這個
41)system event notification 如果是伺服器肯定要記錄的
42)system restore service 系統還原服務
43)task scheler windows 計劃服務
44)Telephony 撥號服務,我不撥號還不行嗎?
45)telnet
46)terminal services 終端服務
47)uninterruptible power supply UPS,我沒有呀
48)universal plug and play device host 太先進了點,用不到
49)upload manager 關了也能傳輸文件的
50)volume shadow 又是備份,暈
51)webclient 沒用過
52)Windows Installer MSI服務,我一直關著。
53)windows image acquisition (WIA) 數碼設備用的
54)windows management instrumentation driver extensions 關了
55)windows time 時間服務
56)wireless zero configuration 無線網路,偶用不到的
57)WMI perfromance adapter 關!

這裡面的一些服務是剛開始就是關的,但我忘了,所以只好把現在系統中關閉的服務基本都列了出來。你根據自己的情況酌情處理吧。

三、我安全嗎

多了不談,基本的共享還是得關的:

修改注冊表為以下兩個樣式:
去除共享
——————————————————————
Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\lanmanserver\parameters]
"AutoShareServer"=dword:00000000
"AutoSharewks"=dword:00000000
——————————————————————
去除IPC$管理
——————————————————————
Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa]
"restrictanonymous"=dword:00000001
——————————————————————
或者將上面兩個保存成個.REG文件,然後雙擊導入就可以了。

順便把不要臉的的3721也屏蔽,在hosts文件中加入:

127.0.0.1 cnsmin.3721.com
127.0.0.1 http://www.3721.net

四、其他技巧

1、給滑鼠右鍵增加個復制到.../移動到...功能
—————————————————————
Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\AllFilesystemObjects\shellex]

[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\AllFilesystemObjects\shellex\ContextMenuHandlers]

[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\AllFilesystemObjects\shellex\ContextMenuHandlers\Copy To]
@="{ C2FBB630-2971-11D1-A18C-00C04FD75D13 }"

[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\AllFilesystemObjects\shellex\ContextMenuHandlers\Move To]
@="{ C2FBB631-2971-11D1-A18C-00C04FD75D13 }"

Ⅳ windows 怎麼編譯 go語言

1、解壓壓縮包到go工作目錄,如解壓到E:\opensource\go\go,解壓後的目錄結構如下:

E:\opensource\go\go
├─api
├─bin
│ ├─go.exe
│ ├─godoc.exe
│ └─gofmt.exe
├─doc
├─include
├─lib
├─misc
├─pkg
├─src
└─test

2、增加環境變數GOROOT,取值為上面的go工作目錄
3、Path環境變數中添加";%GOROOT%\bin",以便能夠直接調用go命令來編譯go代碼,至此go編譯環境就配置好了
註:如果不想手動設置系統環境變數,也可下載go啟動環境批處理附件,
修改goenv.bat文件中的GOROOT值為上面的go工作目錄後直接雙擊該bat文件,go編譯環境變數即設置完成。
4、測試go編譯環境,啟動一個cmd窗口,直接輸入go,看到下面的提示就是搭建成功了

E:\opensource\go\go>go
Go is a tool for managing Go source code.

Usage:

go command [arguments]

The commands are:

build compile packages and dependencies
clean remove object files
doc run godoc on package sources
env print Go environment information
fix run go tool fix on packages
fmt run gofmt on package sources
get download and install packages and dependencies
install compile and install packages and dependencies
list list packages
run compile and run Go program
test test packages
tool run specified go tool
version print Go version
vet run go tool vet on packages

Use "go help [command]" for more information about a command.

Additional help topics:

gopath GOPATH environment variable
packages description of package lists
remote remote import path syntax
testflag description of testing flags
testfunc description of testing functions

Use "go help [topic]" for more information about that topic.

5、編譯helloworld測試程序,go語言包中test目錄帶有helloworld.go測試程序,源碼見"附一 helloworld.go",
直接調用"go build helloworld.go"就生成了"helloworld.exe"可執行程序,運行一下這個程序看到了我們期望的hello,wolrd。

E:\opensource\go\go\test>go build helloworld.go

E:\opensource\go\go\test>helloworld.exe
hello, world

E:\opensource\go\go\test>

附一 helloworld.go

// cmpout

// Copyright 2009 The Go Authors. All rights reserved.
// Use of this source code is governed by a BSD-style
// license that can be found in the LICENSE file.

// Test that we can do page 1 of the C book.

package main

func main() {
print("hello, world\n")
}

Ⅳ go 語言 的 文件 怎麼打開

1、下載go的zip文件。並且一定要把文件解壓到c:\go目錄下。 2、配置windows的高級環境變數。包括:GOROOT、GOOS、GOBIN、GOARCH。並且在path變數裡面把c:\go\bin加入。以便可以在命令行直接運行go命令。

Ⅵ mmap 可能會讓 Go 程序更慢(譯)

你有在 Go 程序中使用 syscall.Mmap 嗎?答案很可能是肯定的,只是你不知道而已。因為你的程序直接或間接的依賴包會使用 syscall.Mmap,畢竟眾所周知的:mmap 要比常規的 I/O 操作快。我們現在來看一下到底是不是這樣。

mmap 是一個系統調用,將文件內容直接映射到內存地址空間。mmap 之後,你就可以像訪問內存一樣對文件內容進行讀寫。這樣就不需要使用比較重的系統調用去對文件內容進行讀寫了。

使用系統調用操作文件,進程會在內核態和用戶態之間頻繁切換,而且數據還要在用戶態和內核態之間來回拷貝。而 mmap 後,整個數據的讀寫都在用戶態完成,不會進入內核態,同時也少了一次數據拷貝。是不是覺得很完美?其實不是的。

程序訪問 mmap 返回的內存地址空間會發生什麼?有兩種場景:

你可能會說,那正常的使用 read/write 訪問冷數據,也會有同樣的問題;也會觸發缺頁中斷,唯一不同的是把內存訪問換成了一個系統調用。

的確是這樣,但是讓我們來看一下 Go 的運行時機制。

Go 的 goroutine 是運行在 OS threads(操作系統線程)之上的。最多可以有 GOMAXPROCS 個 goroutine 並行 的運行在 OS thread 上。其他就緒的 goroutine 會一直等待,直到運行中的 goroutine 發生了阻塞、出讓、或者系統調用。goroutine 會因為 I/O、channel、mutex 而阻塞,會因為函數調用、內存分配、調用 runtime.Gosched 而出讓。 Goroutine 並不會因為缺頁中斷而阻塞!

再強調一次,goroutine 不會因為缺頁中斷而發生阻塞或出讓,因為它對 Go 運行時是不可見的。 那當一個 goroutine 通過 mmap 訪問到冷數據時,會發生什麼呢?它會讓你的程序卡在那裡很長很長時間。在這期間,它還是會持續佔用你的 OS thread,所以其他就緒的 goroutine 因為受到 GOMAXPROCS 的限制,只能排隊。這就導致 CPU 的利用率很低。如果 GOMAXPROCS 個 goroutine 同時訪問 mmap 文件的冷數據,會發生什麼?整個程序會徹底地 Hang 住,直到 OS 完成了這些 goroutine 觸發的缺頁中斷。

監控請求延遲和 CPU 利用率:

這些程序在程序訪問 page cache 中的數據時,是沒有任何問題的。page cache 的大小受內存大小限制。所以這些程序只有在被 mmap 的文件很大時(超出內存大小),才會出現卡住的現象。在低負載場景,或者存儲設備較快時(比如 SSD),不太容易注意到程序出現卡頓。

當 mmap 文件小於內存空間時,以下場景也會出現卡頓:

盡量避免在 Go 程序中使用 mmap,因為它可能讓你的程序 Hang 住。

Ⅶ 為什麼我的電腦壓縮文件時這么慢

優化你的電腦吧:

1、「開始」——運行中輸入msconfig——確定——啟動——除了輸入法ctfmon以外的勾全去掉。重啟。

2、右鍵我的電腦」——屬性——點高級——點啟動和故障恢復中的設置——去掉所有的勾——寫入調試信息選擇「無」——確定——點高級下面錯誤報告——點禁用——2次確定。

3、「開始」——打開控制面板中的文件夾選項——點查看——點去末項自動搜索文件夾前面的勾——確定。

4、右鍵我的電腦——屬性——硬體——設備管理器——雙擊IDE控制器——次要通道——高級設置——傳送模式都選DMA——設備類型選無——確定——主要通道也同樣設置——確定。

5、右鍵C盤進行磁碟清理和其它選項中的系統還原清理。

6、把「C:\WINDOWS\Prefetch(預讀文件)和C:\WINDOWS\Temp(臨時文件)里的東西全刪掉。

7、右鍵瀏覽器e——屬性——點2個刪除1個清除(都要逐一確定)——確定 。

8、清空回收站。

(5、6、7、8點每月清理一次即夠。)

9.關掉調試器Dr. Watson,運行drwtsn32,把除了「轉儲全部線程上下文」之外的全都去掉

10.關閉「系統XP自帶的還原」,右鍵「我的電腦」屬性中,系統還原。(建議不要關閉,關閉只能加快系統運行速度,但對電腦沒什麼好處)

11.關閉「休眠支持」:因為休眠功能占的硬碟空間蠻大的, 所以關閉比較好, 控制面板-->電源選項-->休眠(不要打勾)

12.加快Win XP網上鄰居瀏覽速度!

打開注冊表點擊到:開始-運行-輸入regedit-HKEY_LOCAL_MACHINE/Software/Microsoft/Windows

/CurrentVersion/Explorer/RemoteComputer/NameSpace。分欄出選擇鍵值:{D6277990-4C6A-11CF-87-00AA0060F5BF},刪除下面的沒有必要的鍵值,重新啟動後,會發現桌面上少了許多圖標

13.加速XP的開關機:

1:縮短等待時間 :

開啟注冊表編輯器(開始-運行-輸入regedit-)找到 HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control,

將 WaitToKillServiceTimeout 設為:1000或更小。( 原設定值:20000)即關閉程序時僅等待1秒。將 HungAppTimeout 值改為:200( 原設定值:5000),表示程序出錯時等待0.5秒。

2:讓系統自動關閉停止回應的程序:

打開注冊表 HKEY_CURRENT_USER\Control Panel\Desktop 鍵,

將 AutoEndTasks 值設為 1。 ( 原設定值:0 )

3:MsConfig 大多數朋友都應該熟識MsConfig了,這是一個系統內置的Windows設置工具。點擊開始菜單,選擇「運行」,然後在錄入框中敲入「msconfig」回車。我們要動手腳的是(啟動)選項卡,點擊它,這個選項卡中顯示了Windows啟動時運行的所有程序。這里除了ctfmon,沒有一個程序對Windows來說是生死悠關的,所以放心大膽地把不要的去掉。把部分勾勾去掉之後,Windows啟動會快些,同時空閑的系統資源也會多出一些。

14.取消XP自帶的壓縮文件夾工具:

點擊開始->運行,敲入: regsvr32 /u zipfldr.dll 。然後回車即可

15.關閉錯誤回報:

控制台---->系統---->進階---->右下角--->錯誤報告---->關閉

16.更改臨時文件的位置

A、系統臨時文件:由於系統每天都要產生大量的臨時文件,如果一直放在系統盤,會產生大量的磁碟碎片,造成系統速度越來越慢。臨時文件的產生,一般是安裝軟體、解壓釋放壓縮包和上網的時候會產生一些臨時文件。而且如果頻繁下載的話,也會有大量的臨時文件產生。

更改臨時文件的存放位置的方法是,右鍵「我的電腦」,「屬性」對話框中,「高級」中的「環境變數」設置。「變數」temp和tmp全部設置為其他盤中,選擇「編輯」,然後更改一下路徑就可以了。只更改Local Settings\Temp前面的變數就行了,更改為一個盤符的卷標就可以。

下面「系統變數」中還有temp和tmp這兩個變數,直接更改成相同的就行了。

B、Internet臨時文件,直接右鍵「Internet Explorer」中的「屬性」對話框中,選擇「常規」,在「Internet臨時文件」選項中,點擊設置對話框,選擇「移動文件夾」,將Internet臨時文件也指向到系統文件臨時文件夾的位置就可以了。(建議對電腦不熟悉的用戶不要改變臨時文件的位置,改變失敗後,你的電腦將無法使用瀏覽器,這樣就無法上網)

17、每星期殺次毒。

18、下載一個免費最新優化大師,優化系統。

19.關閉計算機時自動結束任務:

在關機的時候,有時會彈出討厭的對話框,提醒某個程序仍在運行,是否結束任務。其實完全可以通過一點點修改讓Windows自動結束這些仍在運行的程序。在注冊表中打開HKEY_CURRENT_USER\Control Panel\Desktop 目錄,把裡面的AugoEndTasks鍵值改為1 流星雨 2008-06-10 13:29 檢舉

哎上面說這么多有用嗎?,朋友我把我知道告訴你吧!

1.估計是太多的歷史遺留文件的積存 佔去了很多內存! 2.機子本身配置較低 3. 天氣溫度高 CPU散熱慢點 4.機子中了毒或者惡意軟體 5. 開的進程數太多等. 下面是方法

這里的方法太多了~1.最簡單的就是關進程數! 打開任務管理器!結束幾個沒用的進程! 不過不懂不要隨便關 ,萬一關錯了又要重起了.本人深有體會!我的都關到了18! 速度不用說了! 2. 加內存條1G就行 一般不玩什麼大型游戲速度都會很快! 因為電腦空間大了 工作就方便了.和上面的方法性質差不多~!3. 調刷新頻率! 首先 "右鍵桌面"---"屬性"---"設置"--"高級"---"監視器" 調下刷新頻率! 不過先說下液晶機子一般刷新頻率為默認為60 最大75 是安全范圍 不過頻率越大使用壽命越短! 台式就大的多了好的都能挑到120 ! 最好不要調那麼高~ 4. 如果進程里能找到正在運行的程序可以右鍵它 設置為優先! 5.建議下個safe360定期檢測系統漏洞和惡意軟體等 6 優化大師進行優化 刪除些歷史遺留文件!

Ⅷ go編程語言在windows環境和linux環境下那個更流暢

go 在Linux下其實根本不用安裝,解壓後復制到usr/local下即可,再配置一下路徑:
export PATH=$PATH:/usr/local/go/bin

不過學習程序最好還是在linux環境下,這是因為,
精彩在這里:
除動態語言外,靜態語言都會產生目標文件o或obj,然後找到庫文件後鏈接成可執行文件。C語言如此,Go語言也是如此,你可用go run -work運行程序時來發現運行的目錄。這個目錄在linux下就是/tmp目錄,為加快速度和減少硬碟損耗(個人認為這更重要),可把tmp設置成tmpfs格式。
可加入一行:none /tmp tmpfs default 0 0
或加入mount tmpfs /tmp -t tmpfs -o size=128m
減少硬碟讀取就是運行流暢。

Ⅸ eclipse配置go

1.下載go的windows下的安裝包:

https://code.google.com/p/go/downloads/list


也可以下載源代碼,用MinGW編譯。先配置好MinGW的環境,再運行all.bat即可。

MingW:http://www.mingw.org/

2.下載gocode,用於go的補全提示:

gocode 的github地址:

https://github.com/nsf/gocode

要安裝git,在windows下,通常用msysgit。

https://code.google.com/p/msysgit/

再在cmd下安裝:

go get -u github.com/nsf/gocode

也可以下載代碼,直接用go build來編譯,會生成gocode.exe。

3.在eclipse中安裝插件:

http://code.google.com/p/goclipse/wiki/InstallationInstructions

4.配置插件:

(1).配置go的編譯器

(2).配置gocode(可選),這里我用的是eclipse插件自帶的gocode。

選擇Go的安裝路徑即可,如筆者的安裝路徑是F:WorkGo

4、配置調試器(可選)

需要先安裝MinGW,下載地址:http://sourceforge.net/projects/mingw/files/MinGW/

安裝完之後,通過菜單項「Window」-》「Preferences」-》「Go」-》「Debugger」打開調試器的配置選項框。

將GDB路徑配置為:MinGW安裝目錄下的gdb.exe文件即可。

5、配置代碼自動補全(可選)

需要配置gocode,可使用goEclipse插件自帶的版本,也可以自己下載:https://github.com/nsf/gocode

筆者使用的是goEclipse插件自帶的版本,配置方式如下:

通過菜單項「Window」-》「Preferences」-》「Go」-》「Gocode」打開配置選項框。

將Gocode的路徑配置為:goEclipse的安裝路徑下的gocode.exe文件,如

F:Workeclipsepluginscom.googlecode.goclipse.gocode_0.7.6.v450 oolswindows_386gocode.exe

6、配置支持Import遠程包(可選)

為了支持Import遠程包,最好裝個gowin-env。下載地址:https://bitbucket.org/akavel/gowin-env/downloads。 如果下的是壓縮包,請把它解壓到C盤。例如,C:gowin-env。裡面有個Console.bat是以後使用go get的環境。舉例:有個文件a.go,裡面import(

"fmt"

"github.com/astaxie/beedb"

_"github.com/ziutek/mymysql/godrv"

為了編譯該a.go文件,需要啟動Console.bat,然後在該命令行窗口,進入c:gosrc目錄下,執行go getgithub.com/astaxie/beedb

Go get github.com/ziutek/mymysql/godrv .

Go會自動下載該遠程包並編譯和安裝這些包。

7、go install: no install location for directory *** outside GOPATH錯誤的處理

由於每一個Go程序都必須包含一個main包以及一個main()函數,因此如果沒有main包就會導致上述錯誤。

What Doesn't Kill Me Makes Me Stronger

Ⅹ GO程序無法執行

描述: 在運行以下沒有語法錯誤的go文件的時候,出現以下

fork/exec C:-build269385730001exegram.exe: This version of %1 is not compatible with the version of Windows you're running. Check your computer's system information and then contact the software publisher.

提示程序不兼容系統的版本。但是使用go env查看GOARCH=amd64,按理說不會出現這種情況。

原因: 使用WeGame打開DNF之後,會出現這種情況。而在關閉游戲和WeGame等程序之後,運行時仍然出現這個問題,考慮是由於打開DNF之後導致的問題。

解決: 重啟後可以解決。情況就是:打游戲和學習不要同時進行。

閱讀全文

與go程序解壓文件加速相關的資料

熱點內容
父親為救兒子像男人獻身的泰國電影 瀏覽:71
台灣民族片子 瀏覽:4
香港老公出軌電影 瀏覽:462
黑社會後生可畏國語 瀏覽:137
韓國肉肉電影在線觀看 瀏覽:345
中文版韓國倫理電影 瀏覽:397
皇上叫秦風女主是宮女的小說 瀏覽:912
可以看得網址 瀏覽:162
公主的奴 瀏覽:115
邵氏電影700部資源 瀏覽:778
秋瓷炫恐怖電影 瀏覽:873
美國的網站可在線觀看 瀏覽:5
13部金三角販毒電影 瀏覽:932
男子為追女交警故意違規電影台灣 瀏覽:679
四個字帶玩家的電影 瀏覽:42
十三排電影院坐第幾排 瀏覽:122
尼故福利院 瀏覽:602
哪有好看的電影網站 瀏覽:774
紅顏薄命女斗小說 瀏覽:940