原创 exit和_exit的區別

exit()在結束調用它的進程之前,要進行如下步驟:1.cleanup();2.在atexit()註冊的函數;最後調用_exit()函數。。。‘exi

原创 Why Map/Reduce?

從Google在OSDI'04上發表了Map/Reduce這篇Paper;到Yahoo!在06年僱傭Doug Cotting,投入對Hadoop最大的

原创 epoll的一個demo,備忘

/**張亞霏修改文件名:epoll_demo.c編譯: gcc epoll_demo.c -pthread程序源碼如下(請自行編輯宏定義SERVER_IP爲自己的IP):*//*Linux 2.6 x86_64 only*/#includ

原创 異步信號安全的posix函數(備忘)

可重入就是異步信號安全。可重入的要求比多線程安全更嚴格。crt的io函數和malloc、free函數都不是可重入的。但是有的字符串處理函數可重入。滿足下列條件的函數是不可重入的: 1) 函數體內使用了

原创 用VC和MinGW導出dll的def和lib(a)文件

有了dll文件需要導出def文件:pexports zlib1.dll > zlib1.def有了dll和def文件,需要導出MinGW的.a文件:dlltool --dllname zlib1.dll -

原创 下載最新的firefox源碼並編譯

1.準備MozillaBuild在下面地址下載最新的MozillaBuildhttp://ftp.mozilla.org/pub/mozilla/libraries/win32/目前最新的是http://f

原创 才發現VC中也可以檢測內存泄漏

#include <stdio.h>#define _CRTDBG_MAP_ALLOC#include <stdlib.h>#include <crtdbg.h>#ifdef __cplusplus#ifdef DEBUG_NEW#und

原创 Google Chrome有用的命令行參數

--user-agent="xxxxxxxx"修改HTTP請求頭部的Agent字符串,可以通過about:version頁面查看修改效果--user-data-dir="dir"修改臨時文件存放的位置在這裏

原创 使用google breakpad生成dump文件

使用google breakpad生成dump文件breakpad的主要功能就是生成dump文件,還可以將dump文件發送的遠程http服務器。breakpad的SVN在這裏http://google-br

原创 用wget下載整個網站

wget下載整個網站可以使用下面的命令 wget -r -p -k -np http://hi.baidu.com/phps , -r 表示遞歸下載,會下載所有的鏈接,不過要注意的是,不要單獨使用這個參數,

原创 在VS2005中使用IBM Purify的注意事項

[b]Rational Purify 使用及分析實例可以見這裏[/b]http://www.ibm.com/developerworks/cn/rational/r-cail但是如果使用VC7,8,9的默認

原创 linux突破打開文件描述符限制

都要有管理員權限才行   修改 /proc/sys/fs/file-max 文件中的那個數字,改的大一點無所謂   然後ulimit -n 60000

原创 下載最新的Google Chrome源碼並編譯

之所以這麼喜歡chrome,就是因爲它開放。與firefox不同,ff使用了mozilla的一些技術:xul、xpcom,而且編譯過程非常複雜,不適合研究學習。chrome使用了最普通的lib:WTL、zl

原创 一個很完善的war3錄像分析庫War3RepLib源碼

原地址已經找不到了,而且裏面的幾個小bug和編譯不過去的地方我已經修改了.Sample目錄下是個例子.注意:請遵守GPL協議.

原创 The Elements of Programing Style

把代碼寫清楚,別耍小聰明。想幹什麼,講的簡單點、直接點。只要有可能,使用庫函數。避免使用太多的臨時變量。“效率”不是犧牲清晰性的理由。讓機器去幹那些髒活。重複的表達式應該換成函數調用。加上括號、避免歧義。不