re: 動態(tài)數(shù)組的 C++ 類模板 free2000fly 2008-09-05 23:39
@giscn
我的計算機(jī)配置是 intel p-m 2.0G hz, 750 m 內(nèi)存.
奇怪的是, 獨(dú)立運(yùn)行時, VC9 的結(jié)果是:
161203
430172
不解, 此前是在調(diào)試器上運(yùn)行的 DEBUG 版本.
re: 動態(tài)數(shù)組的 C++ 類模板 free2000fly 2008-09-05 23:20
@giscn
我的意思是您能否對我的實現(xiàn)代碼提供點建議
re: 動態(tài)數(shù)組的 C++ 類模板 free2000fly 2008-09-05 23:00
@giscn
我用你的同樣的代碼在 VC6 和 VC9 上測試了一下,
VC6:
135140
12437
VC9:
162422
32766
差距也很明顯, 拙作強(qiáng)一點點. 當(dāng)然, vc6 和 VC9 的 STL 和現(xiàn)在的 sgi STL 不具可比性, 樓上的愿意提供更好的解決方式嗎? 俺沒研讀過 sgi STL 的源代碼.
re: 動態(tài)數(shù)組的 C++ 類模板 free2000fly 2008-09-05 20:42
@RichardHe
多線程同步的問題, 建議找本侯捷翻譯的《Win32多線程程序設(shè)計》書看看, 里面有你想要的.
re: 動態(tài)數(shù)組的 C++ 類模板 free2000fly 2008-09-05 18:47
@木
毫無意義, 你可以將這個名字空間換成你的, 甚至將其完全刪除
re: 動態(tài)數(shù)組的 C++ 類模板 free2000fly 2008-09-05 18:45
@土
第一, 我僅僅是讓我的工作高效的完成. 而設(shè)計一個簡單的類, 不是要設(shè)計一個工業(yè)強(qiáng)度的庫.
第二, 危險不危險各人心中有數(shù). 崩掉了自己會找到原因的.
第三, 交流心得就交流心得, 你覺得你高明自個兒寫文章去, 這里不容納你的排泄物.
re: 動態(tài)數(shù)組的 C++ 類模板 free2000fly 2008-09-05 18:09
在我的項目里, 至少提高了 3 倍以上, 當(dāng)然沒有具體的測試數(shù)據(jù), 只是目測. 你有興趣可以試試. 呵呵. 當(dāng)然, 還有其他的改進(jìn), 比如, 將內(nèi)核級的信號量改成用臨界區(qū), 因為只有進(jìn)程內(nèi)部共享數(shù)據(jù). 無進(jìn)程間通訊的需求.
re: 動態(tài)數(shù)組的 C++ 類模板 free2000fly 2008-09-05 17:48
@水
這個知道, 誰使用誰負(fù)責(zé)線程間數(shù)據(jù)一致性, 我這個主要負(fù)責(zé)提高性能, 同一進(jìn)程內(nèi)可以使用臨界區(qū), 互斥量, 信號量等等. 不同進(jìn)程使用互斥量, 信號量等, 推薦使用信號量.
@xyj
你夠懶, 照葫蘆畫瓢一路下來就能得到一個例子代碼. 自求多福吧.
"同樣地,只有創(chuàng)建 mutex 的線程可以調(diào)用 ReleaseMutex 函數(shù) "
應(yīng)為
"同樣地,只有當(dāng)前擁有 mutex 的線程可以成功地調(diào)用 ReleaseMutex 函數(shù) "
謝謝你的翻譯
@wwwww
有道理, 但好歹這是公開的合法的 API, 是受操作系統(tǒng)支持的.
@UI Automation
提升令牌權(quán)限的代碼滿大街都是. 沒什么稀奇的.
至于要注入到所有進(jìn)程, 當(dāng)然得編寫驅(qū)動了, 不然你就得時時刻刻枚舉進(jìn)程的總數(shù), 然后一個一個注入, 累死你, 而且效率低下, 實時性也不強(qiáng).
@guest
等一小會, 讓注入代碼的進(jìn)程退出以后, 才執(zhí)行下面的刪除操作, 不然十之八九會失敗.
@飯中淹
明白了, 將所有用到的地址組織成一個數(shù)組, 直接寫到目標(biāo)進(jìn)程, 遠(yuǎn)程線程通過查表調(diào)用需要的 API. 本質(zhì)相同, 但對于要調(diào)用 kernel32.dll 以外的函數(shù)在初始化時有重要意義. 但我沒有調(diào)用那, 遠(yuǎn)程代碼盡量保持小巧.
@cppexplore
工作成果, 不便公開詳情, 可以看看頭兩篇文章, 相信您會明白究竟的.
re: 服務(wù)器遷移預(yù)告 free2000fly 2008-06-20 11:54
為什么我不能刪除我上傳的文件啊?
re: 一個復(fù)合文檔查看器 free2000fly 2008-06-13 07:39
@redfox
不明白你的意思
re: VC++ 6 的 MSDN 插件 free2000fly 2008-05-02 14:41
@Mix
哦? 原來如此, 謝謝修正. 我一直使用英文版的, 沒發(fā)現(xiàn).
re: 一個復(fù)合文檔查看器 free2000fly 2008-04-01 08:09
@Conan
我想我的源代碼里以及其它地方已經(jīng)提供足夠的暗示, 自己找吧, 別怪俺齷齪.
re: 一個復(fù)合文檔查看器 free2000fly 2008-04-01 08:08
@國崎往人
哥們, 本文第一句話就是 "用 ATL 和 WTL 寫的復(fù)合文檔查看器", 你下載一個 WTL 庫, 將頭文件放到你的編譯器能找到的文件夾內(nèi).
re: VC++ 6 的 MSDN 插件 free2000fly 2008-03-30 15:32
@max
還是使用的這個對象的, 我的 VC9 測試無誤的
re: VC++ 6 的 MSDN 插件 free2000fly 2008-03-26 19:34
@an_eagle@163.com
不可能,俺用的就是VC2008, 好使的很
@天之驕子
這是 MFC 里的函數(shù), 不是一個 Win32 API, 看看以下 MFC 源代碼:
// WM_NCDESTROY is the absolute LAST message sent.
void CWnd::OnNcDestroy()
{
// ...
// call special post-cleanup routine
PostNcDestroy();
}
void CWnd::PostNcDestroy()
{
// default to nothing
}
你就明白了, 作為虛函數(shù)的 PostNcDestroy 函數(shù), 可以在你的派生類里被你改寫, 做你自己的清理. 但你不能自己調(diào)用這個函數(shù), 而是由 MFC 框架在其內(nèi)部調(diào)用.
re: 智能指針的幾點錯誤操作心得 free2000fly 2008-01-23 17:12
建議精讀 <<COM 本質(zhì)論>>, 就不會出現(xiàn)這些錯誤了
re: 一個復(fù)合文檔查看器 free2000fly 2007-12-07 15:20
俺看有可能, 你可以用 office 2007 生成 .docx 文檔, 然后將這個文件名改名為 .zip 擴(kuò)展名, 用解壓軟件解開后, 里面就是一坨一坨的 xml 文件.
re: 一個復(fù)合文檔查看器 free2000fly 2007-12-07 09:52
請執(zhí)行 bin 目錄里的 install.bat 文件注冊 HexEditAx.dll 組件.
但我覺得這個技術(shù)還是很好的, 雖然看起來偏底層了點, 但操作復(fù)合文檔不是一般的方便, 當(dāng)然也可以使用現(xiàn)在的 xml 技術(shù), 但用于存儲較大的二進(jìn)制文件數(shù)據(jù)看來還是復(fù)合文檔好點.