金慶的專欄
C++博客
::
首頁
::
新隨筆
::
聯(lián)系
::
聚合
::
管理
::
423 隨筆 :: 0 文章 :: 454 評論 :: 0 Trackbacks
公告
我的隨筆
我的評論
我參與的隨筆
留言簿
(12)
給我留言
查看公開留言
查看私人留言
隨筆分類
(502)
1. C/C++(166)
(rss)
2. 網(wǎng)游開發(fā)(108)
(rss)
3. Golang(20)
(rss)
4. Linux/Unix(30)
(rss)
5. 軟工與管理(44)
(rss)
6. Python(23)
(rss)
7. Erlang(18)
(rss)
8. Rust(16)
(rss)
9. 其它(77)
(rss)
隨筆檔案
(423)
2023年1月 (1)
2022年11月 (1)
2022年10月 (2)
2022年9月 (1)
2022年4月 (6)
2022年1月 (2)
2021年12月 (4)
2021年11月 (6)
2021年10月 (2)
2021年9月 (2)
2021年8月 (7)
2021年7月 (2)
2021年5月 (2)
2021年3月 (1)
2021年2月 (2)
2021年1月 (1)
2020年12月 (1)
2020年10月 (1)
2020年9月 (5)
2020年8月 (1)
2020年7月 (1)
2020年6月 (1)
2020年4月 (2)
2020年3月 (3)
2020年2月 (3)
2020年1月 (1)
2019年12月 (1)
2019年9月 (2)
2019年4月 (2)
2019年1月 (1)
2018年12月 (1)
2018年11月 (3)
2018年10月 (1)
2018年9月 (3)
2018年8月 (3)
2018年7月 (2)
2018年6月 (4)
2018年5月 (4)
2018年4月 (4)
2018年3月 (1)
2018年1月 (2)
2017年12月 (2)
2017年11月 (3)
2017年10月 (3)
2017年8月 (7)
2017年7月 (1)
2017年6月 (1)
2017年5月 (3)
2017年4月 (3)
2017年3月 (3)
2017年2月 (2)
2017年1月 (2)
2016年12月 (5)
2016年11月 (2)
2016年10月 (2)
2016年9月 (1)
2016年8月 (6)
2016年7月 (3)
2016年6月 (2)
2016年5月 (4)
2016年4月 (2)
2016年3月 (2)
2016年1月 (3)
2015年12月 (2)
2015年11月 (2)
2015年10月 (1)
2015年8月 (2)
2015年7月 (1)
2015年6月 (1)
2015年5月 (4)
2015年4月 (3)
2015年3月 (4)
2015年2月 (5)
2015年1月 (4)
2014年12月 (3)
2014年11月 (3)
2014年10月 (2)
2014年9月 (3)
2014年8月 (1)
2014年4月 (4)
2014年3月 (1)
2014年2月 (4)
2014年1月 (5)
2013年12月 (5)
2013年11月 (5)
2013年9月 (2)
2013年8月 (2)
2013年7月 (2)
2013年6月 (2)
2013年5月 (1)
2013年1月 (2)
2012年12月 (1)
2012年11月 (1)
2012年9月 (1)
2012年8月 (3)
2012年7月 (2)
2012年6月 (1)
2012年4月 (3)
2012年3月 (2)
2012年2月 (3)
2012年1月 (2)
2011年11月 (2)
2011年10月 (3)
2011年9月 (2)
2011年8月 (2)
2011年7月 (3)
2011年6月 (2)
2011年5月 (3)
2011年1月 (2)
2010年12月 (1)
2010年11月 (2)
2010年10月 (2)
2010年9月 (3)
2010年8月 (2)
2010年7月 (3)
2010年6月 (1)
2010年5月 (3)
2010年4月 (3)
2010年3月 (5)
2010年2月 (4)
2010年1月 (4)
2009年12月 (2)
2009年11月 (3)
2009年10月 (4)
2009年9月 (3)
2009年8月 (2)
2009年7月 (4)
2009年6月 (1)
2009年5月 (3)
2009年4月 (4)
2009年3月 (2)
2009年2月 (5)
2009年1月 (1)
2008年12月 (7)
2008年11月 (4)
2008年10月 (1)
2008年9月 (3)
2008年8月 (4)
2008年7月 (3)
2008年6月 (4)
2008年5月 (6)
2008年4月 (7)
2008年3月 (6)
2008年1月 (5)
2007年12月 (7)
2007年11月 (4)
2007年10月 (5)
2007年9月 (6)
2007年8月 (8)
2007年7月 (5)
相冊
公告照片
搜索
積分與排名
積分 - 653816
排名 - 25
最新評論
1.?re: boost::asio::spawn 將一統(tǒng)C++網(wǎng)絡(luò)庫
asio 成為C++首選網(wǎng)絡(luò)庫
--linda
2.?re: log4cxx中文輸出錯誤補丁
評論內(nèi)容較長,點擊標(biāo)題查看
--金慶
3.?re: mingw編譯OrzNet
能發(fā)送一個mingw編譯好的OrzNet庫給我嗎? liuweiqcxy@163.com
謝謝!
--劉威
4.?re: log4cxx中文輸出錯誤補丁
評論內(nèi)容較長,點擊標(biāo)題查看
--bigbad
5.?re: log4cxx中文輸出錯誤補丁
評論內(nèi)容較長,點擊標(biāo)題查看
--bigbad
閱讀排行榜
1.?"multiple definition of" 錯誤(11016)
2.?SVN中邪惡的replace(10937)
3.?VS2005編譯libevent(10404)
4.?混音算法的學(xué)習(xí)與研究(10183)
5.?C調(diào)用lua腳本的效率測試(9002)
評論排行榜
1.?VC6正在被拋棄(35)
2.?VS2005編譯libevent(21)
3.?"multiple definition of" 錯誤(18)
4.?C++引用優(yōu)于指針(17)
5.?ACE與ASIO之間關(guān)于Socket編程的比較(16)
共4頁: 1
2
3
4
re: log4cxx中文輸出錯誤補丁
金慶 2014-05-13 21:15
@bigbad
src不為空時,position到新的src處,這2種計算相同:
in.position(in.position() + src - in.current());
in.position(src - in.data());
src為空時,2種計算不相同:
in.position(in.limit());
in.position(in.position() + strnlen(in.current(), in.remaining()));
當(dāng)in中間有'\0'時,in.limit()會跳過剩余的輸入串。
re: 用Boost.Python構(gòu)建混合系統(tǒng)
金慶 2013-12-16 16:40
@lgl
需要先安裝python.
re: 使用完成端口HTTP下載的代碼
金慶 2013-12-16 16:39
@cmi
需要內(nèi)網(wǎng)測試,速度接近網(wǎng)絡(luò)帶寬。
re: 網(wǎng)游服務(wù)器多進(jìn)程架構(gòu)的思考
金慶 2013-07-24 17:50
同意網(wǎng)游數(shù)據(jù)分主從數(shù)據(jù),主數(shù)據(jù)可讀寫,從數(shù)據(jù)是主數(shù)據(jù)的緩存,只讀。主數(shù)據(jù)在對應(yīng)的功能進(jìn)程內(nèi)存中,其他進(jìn)程的該數(shù)據(jù)為從數(shù)據(jù)??蛻舳诉M(jìn)程數(shù)據(jù)都是從數(shù)據(jù),本地文件保存或數(shù)據(jù)庫保存也是從數(shù)據(jù)。
劃分?jǐn)?shù)據(jù)所屬進(jìn)程要看進(jìn)程寫的次數(shù),其他進(jìn)程寫數(shù)據(jù)只能請求屬主進(jìn)程。
re: 線程安全的隨機數(shù)生成
金慶 2013-03-19 16:00
@春秋十二月
多線程調(diào)用時,局部靜態(tài)變量s_pRng可能并發(fā)多次初始化。多謝指出。thread_specific_ptr的示例代碼中用的是全局變量,只有一次初始化。
還是改成全局靜態(tài)變量好了。
typedef boost::random::mt19937 Generator;
static boost::thread_specific_ptr<Generator> s_pRng;
static Generator & GetGen()
{
Generator * pRng = s_pRng.get();
...
}
re: 線程安全的隨機數(shù)生成
金慶 2013-03-18 19:01
@春秋十二月
當(dāng)然是線程安全的。
re: 自動刪除的定時器隊列
金慶 2012-11-14 19:23
@zozoiiiiii
沒錯,是在~Player()中注銷的。上面的代碼是如何注銷。假設(shè)某個Player注冊了上千個定時器,需要在~Player()中調(diào)用上千次注銷方法嗎?
re: SVN中邪惡的replace
金慶 2012-06-15 10:37
@marten
是在客戶端操作。目前版本的TSVN的show log有個選項, "stop on copy/rename", 取消該選項,應(yīng)該能看到歷史記錄了。
re: log4cxx的使用模式
金慶 2012-04-27 18:02
宏定義需要使用 do { ... } while(0) 包裹,不然 if (...) LOG_DEBUG("n", "m"); else ... 會報編譯錯誤。
re: 巨人網(wǎng)絡(luò)3D頁游《冒牌天神》招聘服務(wù)器C++程序員
金慶 2012-04-06 18:55
@Zealotyin
有博客證明能力很好。
re: 巨人網(wǎng)絡(luò)3D頁游《冒牌天神》招聘服務(wù)器C++程序員
金慶 2012-02-23 12:15
@蝸牛
上海松江
re: log4cxx的使用模式
金慶 2012-02-15 10:15
@玉兔
方法1: 不要刪正打開的日志。
方法2: 修改log4cxx代碼,讓它自動生成新的日志。
re: 【備忘】STL使用備忘
金慶 2012-02-10 10:08
boost::algorithm::to_lower(str);
re: 使用完成端口HTTP下載的代碼
金慶 2011-08-19 15:34
只要有一個包到達(dá),完成端口就執(zhí)行一次從緩沖里讀操作檢測執(zhí)行,而通常應(yīng)用,一個數(shù)據(jù)段會由很多包組成,這樣,內(nèi)核線程需要調(diào)度很多次,而如果使用非阻塞 SOCKET讀,通過定時檢查機制,可以避免這種內(nèi)部的頻繁調(diào)度. 參見: 網(wǎng)絡(luò)編程--走出完成端口的誤區(qū) (
http://blog.csdn.net/danscort2000/article/details/4703391
)
re: 在C++中使用IoC及DSM框架
金慶 2011-07-07 11:46
再次閱讀. SCA是忽悠嗎? 需要比較一下PocoCapsule和SCA C++.
re: 一道C++面試題的誤區(qū)
金慶 2011-05-06 15:03
應(yīng)該讓比較操作是耗時的, 而賦值操作是不耗時的, 這樣才能體現(xiàn)出算法的優(yōu)劣.
re: MMORPG的發(fā)展方向是大型化
金慶 2011-04-27 09:37
@egmkang
社交圈子只是社會關(guān)系的一種. 一個人的直接關(guān)系是有限的, 但間接關(guān)系是無限的.
re: VS2005編譯libevent
金慶 2011-01-06 11:29
@hustnn
自己搜索一下吧:)
re: 生成隨機數(shù)的一段代碼
金慶 2010-12-23 12:17
絕對隨機? 連偽隨機都稱不上.
需將 int x = rand()/(RAND_MAX/(sizeof(sourchar)-1));
改為 int x = int(double(rand())/RAND_MAX * (sizeof(sourchar)-1));
不然 x 取到最大值的概率明顯小于其他值.
re: UI中包裹物品排序
金慶 2010-12-20 11:46
包裹整理是客戶端功能. 嚴(yán)格說, 應(yīng)該是外掛(輔助程序)的功能. 只要客戶端開放了包裹讀取和操作的接口, 用戶可以自定義包裹整理.
re: VS2005編譯libevent
金慶 2010-11-15 13:44
@剛工作的新手
引用libevent需要在編譯選項添加-L -l選項, 請查看gcc中相關(guān)的幫助. 需要用mingw編譯的, vc編譯的只能用于vc. mingw下直接make install應(yīng)該就可以了, 我忘了以前自己是怎么做的.
re: VS2005編譯libevent
金慶 2010-11-12 11:22
@你好,
1. 動態(tài)庫也行, 一般還是靜態(tài)簡單點
2. 進(jìn)WIN32-Prj編譯
3. 需要設(shè)置Include目錄和Lib目錄
re: 【原創(chuàng)】從同步互斥機制到智能指針使用成本
金慶 2010-09-02 16:44
"線程之間盡量避免傳遞指針"? 能說明一下嗎?傳id和傳指針有什么區(qū)別?
re: 未來網(wǎng)游三大主流技術(shù)
金慶 2010-08-23 12:47
@yisa
我覺得網(wǎng)游應(yīng)該淡化輸入的即時性。比如:網(wǎng)游不適合做格斗游戲,適合星際戰(zhàn)爭這類的。因為網(wǎng)絡(luò)延時是沒法解決的。最好是相對移動緩慢的,攻擊后需要一段時間才能收到攻擊結(jié)果的。
(我沒有QQ號,喜歡郵件交流,jinq0123AT163)
re: SVN中邪惡的replace
金慶 2010-08-20 10:10
@fj
SVN log 中有個 replacing 記錄,對該記錄的版本執(zhí)行 “revert changes from this revision” 即可。注意要TSVN顯示整個目錄的log。
re: Boost Serialization在網(wǎng)游中的應(yīng)用實例
金慶 2010-07-27 14:10
@yisa
這里的指針應(yīng)該是對象的ID號吧?RPC中就是對象的引用。
re: 不喜歡KOK3中人物無阻擋的設(shè)定
金慶 2010-07-27 10:23
@yisa
擁擠時減速是最符合常理的?,F(xiàn)實中的情況是擁擠程度可以很高,如早高峰時的地鐵內(nèi)。2D網(wǎng)游中的阻擋點造成場景內(nèi)一個人占一個格子的情形不符合現(xiàn)實??蛻舳酥恍鑼頂D的情形表現(xiàn)出來,不要出現(xiàn)模型對穿就好了。減速的成本幾乎為0. 主要是看客戶端的效果,是否能做出擁擠的效果。
re: 利用慣性和加速度進(jìn)行網(wǎng)游位置同步
金慶 2010-07-27 10:13
@yisa
kok3中有導(dǎo)航預(yù)測,也有滯后補償時間,所以有同伴落后問題。網(wǎng)絡(luò)卡時,會有人物被拉回的現(xiàn)象。這一部份一直在改進(jìn),現(xiàn)在已經(jīng)很不錯了,正常情況下感覺真實性很好。
re: MMORPG服務(wù)器組集群方案
金慶 2010-07-09 15:40
支線是什么意思?
BaseApp只是聊天和廣播,獨立出來是否更好?讓Client直接連CellApp好了。
re: 多線程還是單線程?
金慶 2010-07-09 14:42
兩者性能沒什么差別,就看哪個實現(xiàn)簡單了。
re: 客戶端服務(wù)器應(yīng)統(tǒng)一庫的使用
金慶 2010-05-13 09:49
@戰(zhàn)魂小筑
用數(shù)據(jù)庫來配置,代碼量更大,邏輯上多了一層,結(jié)構(gòu)上受限于數(shù)據(jù)庫的表格模式,各方面都沒有配置文件更適合。我認(rèn)為,在網(wǎng)游中,只讀的數(shù)據(jù)應(yīng)該用配置文件,數(shù)據(jù)保存才用數(shù)據(jù)庫。配置文件可以用INI,XML,或自定義文本格式,不應(yīng)該用二進(jìn)制格式,因為文本可以直接編輯。用XML有XML驗證功能,如判斷某個屬性必須配置,這一點上優(yōu)于其他配置文件。
re: 需要判斷指針為空嗎
金慶 2010-05-13 09:38
@classyk
傳統(tǒng)的C程序中是int類型到處使用,而在C++中更傾向于各種功能用不同的類型,如容器大小用size_t. 用無符號數(shù)減少了小于0的判斷,“更加麻煩”在哪里?
re: MMORPG游戲服務(wù)器場景中對于多個觀察者的廣播消息重復(fù)解決方案。
金慶 2010-04-29 10:17
消息不是發(fā)給角色或監(jiān)控器,而是發(fā)給它們的客戶端。先列舉可接收的客戶端,再廣播,就不會重復(fù)了。
re: SVN中邪惡的replace
金慶 2010-02-26 15:11
@Jim
自己試試吧。試過才能理解SVN操作。
re: 服務(wù)器程序運行時邏輯替換
金慶 2010-02-12 11:48
如果邏輯模塊是個腳本,腳本熱替換應(yīng)該沒有一點問題. 如果是進(jìn)程,熱替換是很麻煩的。
re: 對未來虛擬化和遠(yuǎn)程桌面技術(shù)發(fā)展和融合的展望
金慶 2010-02-12 11:43
要網(wǎng)絡(luò)有足夠帶寬才行。
re: 需要判斷指針為空嗎
金慶 2010-02-11 16:18
@kevin lynx
我的觀點是:只要有可能為空的,就一定要判斷是否為空; 不可能為空的,可以用一個assert斷言來表達(dá)。
關(guān)鍵在于判斷是否有可能為空。由函數(shù)調(diào)用者保證不為空的,就認(rèn)為不可能為空,可在函數(shù)說明中注釋并在函數(shù)開始處加個斷言。由進(jìn)程以外輸入決定的,如用戶輸入,文件輸入,或其他進(jìn)程傳入數(shù)據(jù)決定的指針,即使外部接口規(guī)定了不會造成空指針,但仍應(yīng)該對輸入判斷。外部輸入錯誤不應(yīng)該造成程序錯誤。
re: 靜態(tài)庫中全局變量的初始化問題
金慶 2010-02-10 15:52
@李現(xiàn)民
試了一下,確實如此。我打開lib文件查到了加了前后綴的變量名,然后在主調(diào)程序中添加/include指令,這樣才有效。我原來以為只需加在靜態(tài)庫中呢。實際上,靜態(tài)庫中加不加/include指令,都會輸出符號。但是static變量是無論如何都不會輸出符號的。/include指令與引用該符號的作用一樣。所以我的結(jié)論是應(yīng)該輸出一個init()函數(shù)來初始化靜態(tài)庫。
re: 靜態(tài)庫中全局變量的初始化問題
金慶 2010-02-09 19:44
Issues with static variables in static libraries
(
http://social.msdn.microsoft.com/Forums/en/vclanguage/thread/5c5ee89d-2a38-483d-8550-484550901170
)
You can use the /INCLUDE linker option:
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/vccore/html/_core_.2f.INCLUDE.asp
Or you place a #pragma in your code like this:
#pragma comment(linker, "/include:SymbolToUse")
re: 用boost::spirit實現(xiàn)的表達(dá)式求值
金慶 2010-01-14 13:18
@王漢平
我查了一下,是spirit有新舊版本區(qū)別。以上代碼是舊的使用方法(classic).
可以忽略該警告。
也可以如下更改:
-#include <boost/spirit.hpp>
+#include <boost/spirit/include/classic.hpp>
- using namespace boost::spirit;
+ using namespace boost::spirit::classic;
re: 隨機數(shù)生成器應(yīng)該如何單元測試?
金慶 2010-01-11 10:08
@陳梓瀚(vczh)
是我沒表達(dá)清楚。我指的測試失敗是指容忍度太小。
生成10000個隨機數(shù),不可能正好9000個為1-50,在該數(shù)上下一定范圍內(nèi)都可判為通過。
例如容忍度取正負(fù)1%,絕大多數(shù)測試會通過,但仍有小概率不能滿足誤差1%,會超出范圍而判斷為測試失敗。
re: ACE vs Boost: Singleton的實現(xiàn)
金慶 2009-12-03 16:06
以上DCL單件的實現(xiàn)可能是有缺陷。但我不是很確信。因為ACE確實是這樣實現(xiàn)的。按我的理解,加個volatile就好了?!癟he "Double-Checked Locking is Broken" Declaration”(
http://www.cs.umd.edu/~pugh/java/memoryModel/DoubleCheckedLocking.html
)一文可作參考。不知adah所說的批駁是否指這一點?
re: 顯示wxStaticBitmap的窗口
金慶 2009-11-13 09:42
@Jacky
可能是wx的錯誤. 有空可以研究研究.
re: 小心刪除容器中元素時的迭代器失效
金慶 2009-10-30 16:13
是不是就是unique()啊?
re: C++引用優(yōu)于指針
金慶 2009-10-30 16:09
@Johnson
@溪流
在C++中, 指針和引用參數(shù)都是提醒開發(fā)人員這是輸出參數(shù).
表示輸入?yún)?shù)的是const關(guān)鍵字.
re: STL容器的賦值運算符可以更靈活嗎?
金慶 2009-10-12 14:13
@yisa
@踏雪赤兔
既然可以這樣賦值: lB.assign(lD.begin(), lD.end());
也應(yīng)該支持等號運算符賦值: lB = lD;
既然支持元素的隱式類型轉(zhuǎn)換, 也應(yīng)該支持容器的隱式類型轉(zhuǎn)換.
re: 網(wǎng)游防刷指令攻擊的設(shè)計
金慶 2009-09-28 09:27
@浩毛
我的假定是客戶端程序可以被破解.
所有客戶端密碼,加密方法,與服務(wù)器的通信協(xié)議都是可見的.
re: snmp為何用oid來唯一標(biāo)識對象
金慶 2009-09-23 15:38
oid再滿足唯一性不是更好? 最好是只有一個標(biāo)識.
re: vc編譯期的常量除法優(yōu)化
金慶 2009-09-23 15:00
除以常數(shù)轉(zhuǎn)換為乘以常數(shù).
re: Boost Serialization在網(wǎng)游中的應(yīng)用實例
金慶 2009-09-21 17:33
@teli_eurydice
沒碰到過,給個示例看看?
共4頁: 1
2
3
4
Powered by:
C++博客
Copyright © 金慶
成人国内精品久久久久影院VR
|
人妻无码精品久久亚瑟影视
|
狠狠人妻久久久久久综合
|
四虎亚洲国产成人久久精品
|
97久久婷婷五月综合色d啪蜜芽
|
成人久久精品一区二区三区
|
久久国产乱子伦精品免费午夜
|
久久SE精品一区二区
|
国产亚洲欧美成人久久片
|
国内精品久久久久久野外
|
精品久久人人爽天天玩人人妻
|
精产国品久久一二三产区区别
|
香蕉久久一区二区不卡无毒影院
|
久久精品国产亚洲5555
|
久久久久青草线蕉综合超碰
|
情人伊人久久综合亚洲
|
99久久做夜夜爱天天做精品
|
一本伊大人香蕉久久网手机
|
久久精品国产免费观看
|
久久精品国产国产精品四凭
|
久久亚洲精品国产精品
|
欧美久久一区二区三区
|
久久综合丝袜日本网
|
中文字幕乱码久久午夜
|
久久久久亚洲精品无码网址
|
久久婷婷五月综合97色直播
|
色综合久久最新中文字幕
|
无码人妻久久久一区二区三区
|
久久精品亚洲男人的天堂
|
1000部精品久久久久久久久
|
久久精品国产亚洲AV蜜臀色欲
|
精品无码久久久久久久久久
|
久久久久久午夜成人影院
|
久久久久亚洲精品天堂久久久久久
|
国产精品无码久久久久久
|
久久久久久久97
|
午夜精品久久久久久影视777
|
久久综合综合久久97色
|
国内精品久久人妻互换
|
伊人久久大香线蕉综合影院首页
|
久久久久99精品成人片
|