青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

S.l.e!ep.¢%

像打了激速一樣,以四倍的速度運轉,開心的工作
簡單、開放、平等的公司文化;尊重個性、自由與個人價值;
posts - 1098, comments - 335, trackbacks - 0, articles - 1
  C++博客 :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理

內存崩潰的BUG
內存崩潰的BUG (2)
內存崩潰的BUG (3)

連續三天在跟蹤同個問題!!!!!!!!

今天重現了幾次問題,都是下面的原因導致的。

首先要說下IOCP的實現

下面的發送包時的代碼
-------------------------------------------------------------------------
PER_IO_CONTEXT* overlappedEx=new PER_IO_CONTEXT
overlappedEx->IOOperation= WRITE;
overlappedEx->wsabuf.buf= (char *)malloc( nLen );
if( NULL == overlappedEx->wsabuf.buf )
{
delete overlappedEx;
return -1;
}

if(WSASend(m_socket,&(overlappedEx->wsabuf), 0x01, &dwBytes, 0x00, &(overlappedEx->Overlapped), NULL ) == SOCKET_ERROR)
-------------------------------------------------------------------------


下面是完成端口通知時的處理代碼
-------------------------------------------------------------------------
?while (m_bIsRun)
?{
??result = GetQueuedCompletionStatus(m_hCompletionPort,&iosize,&key,&overlapped,INFINITE);
??if ( 0 == key )?
??{
???break;
??}
??if( NULL != overlappedEx )
??{
???if ( WRITE == overlappedEx->IOOperation )
???{???
????delete overlappedEx;
????continue;
???}
}

……
}
-------------------------------------------------------------------------

之后在?????delete overlappedEx; 前面用 OutPutDebugString 打印了調試信息, 發現在?
?delete overlappedEx; 執行后

WSASend 里面還會訪問到? overlappedEx 下面的??Overlapped,結果就在 WSASend 出錯了

overlappedEx 的結構體定義如下:

struct PER_IO_CONTEXT
{
?WSAOVERLAPPED????Overlapped;
?WSABUF????????????????????? wsabuf;
?IO_OPERATION?????????IOOperation;
};


查了下 MSDN? WSASend 函數的說明,無頭緒,明天繼續

Feedback

# re: 內存崩潰的BUG (4) 完成端口的問題? 程序的BUG?[未登錄]  回復  更多評論   

2009-04-02 19:48 by cppexplore
.............................
內存檢測工具跑一遍就能發現的問題,你還真執著啊。

# re: 內存崩潰的BUG (4) 完成端口的問題? 程序的BUG?  回復  更多評論   

2009-04-07 13:14 by freeeyes
推薦你使用完全端口的時候,一定要注意判空操作。
如果我是你的話,就這么寫。
while (m_bIsRun)
{
result = GetQueuedCompletionStatus(m_hCompletionPort,&iosize,&key,&overlapped,INFINITE);
if ( 0 == key )
{
break;
}
if( NULL != overlappedEx )
{
if ( WRITE == overlappedEx->IOOperation )
{
delete overlappedEx;
overlappedEx = NULL;
continue;
}
}

而且在使用Send的同時,可能會出現這樣的情況。就是你發送的Send數據還在緩沖區的時候,你的overlappedEx對象被釋放,造成的內存崩潰的現象。我的做法是增加一些數據鎖。同時,在要刪除overlappedEx的時候,先判定寫標志是否在進行。如果有做一個定時器,延時幾秒刪除對象(將對象放入刪除隊列),這樣似乎比較好。ACE下的思想也是這樣的。
另外,我不太明白你為什么要在WRITE == overlappedEx->IOOperation 的時候進行刪除對象操作?

# re: 內存崩潰的BUG (4) 完成端口的問題? 程序的BUG?  回復  更多評論   

2009-04-20 23:07 by hearts
我也遇到了這個問題。樓主發現的是對的。也是不知道為什么。只好對overlapped進行引用計數。問題倒是解決了,不過覺得做法很丑陋。不知道有沒有好的解決辦法。可能HasOverlappedCompleted有些幫助

# re: 內存崩潰的BUG (4) 完成端口的問題? 程序的BUG?  回復  更多評論   

2009-10-17 13:47 by FreeChord
delete overlappedEx;

這塊內存(buf)沒free啊!
overlappedEx->wsabuf.buf= (char *)malloc( nLen );
青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            另类酷文…触手系列精品集v1小说| 国产一区二区电影在线观看| 亚洲高清不卡一区| 亚洲人体大胆视频| 亚洲你懂的在线视频| 亚洲日本成人网| 亚洲日本免费| 一区二区黄色| 性欧美超级视频| 久久久噜噜噜久久| 欧美福利专区| 亚洲老司机av| 久久aⅴ国产紧身牛仔裤| 久久精品免费播放| 麻豆成人av| 国产精品xnxxcom| 国产亚洲精品美女| 亚洲美洲欧洲综合国产一区| 一区二区动漫| 久久一二三国产| 91久久亚洲| 欧美诱惑福利视频| 欧美日韩第一区日日骚| 国产精品一级| 日韩一级欧洲| 久久久国产一区二区| 亚洲理论在线观看| 欧美韩国日本一区| 激情视频一区二区三区| 亚洲视频网在线直播| 欧美黄色免费| 噜噜噜久久亚洲精品国产品小说| 免费高清在线视频一区·| 久久综合色天天久久综合图片| 米奇777超碰欧美日韩亚洲| 国产精品九九久久久久久久| 99精品国产在热久久下载| 欧美岛国在线观看| 久久一区视频| 亚洲黄色在线| 亚洲国产精品一区二区第一页| 久久久久五月天| 亚洲福利视频网| 欧美国产一区在线| 欧美成年视频| 亚洲欧美一区二区视频| 亚洲一区二区影院| 含羞草久久爱69一区| 欧美激情一区二区三区高清视频| 免费成人高清在线视频| 99在线精品免费视频九九视| av成人国产| 国产综合av| 亚洲精品日韩精品| 国产亚洲精品资源在线26u| 免费永久网站黄欧美| 国产精品xxxxx| 国产精品亚洲а∨天堂免在线| 韩国在线一区| 亚洲精品国产精品国自产在线 | 99日韩精品| 国产亚洲美州欧州综合国| 亚洲精品美女免费| 欧美日韩国产亚洲一区| 欧美资源在线| 欧美日韩高清在线观看| 久久福利一区| 欧美日韩综合精品| 亚洲经典视频在线观看| 黄色亚洲在线| 香蕉久久夜色精品| 午夜视频在线观看一区| 欧美精品在线看| 免费一级欧美片在线播放| 国产日韩亚洲欧美| 亚洲欧美视频一区| 欧美在线视频观看免费网站| 欧美日韩成人综合天天影院| 欧美福利在线观看| 亚洲三级影院| 欧美日韩在线免费视频| 9色精品在线| 午夜精品免费| 国产一区二区高清不卡| 午夜精品久久久久久久白皮肤 | 国产一区二区三区奇米久涩| 一区二区三区久久久| 午夜精品免费在线| 在线电影欧美日韩一区二区私密| 久久久久国产免费免费| 亚洲国产精品电影| 亚洲淫性视频| 1000部国产精品成人观看| 欧美精品在线观看播放| 亚洲欧美电影院| 亚洲午夜在线观看视频在线| 亚洲一级特黄| 亚洲高清免费在线| 国产麻豆午夜三级精品| 翔田千里一区二区| 欧美激情一区二区在线| 亚洲欧美日韩精品久久奇米色影视 | 国产自产高清不卡| 久久久www成人免费无遮挡大片| 欧美不卡高清| 亚洲一区二区三区精品视频| 国产一区二区欧美日韩| 欧美精品一级| 欧美好吊妞视频| 免费观看在线综合| 久久人91精品久久久久久不卡| 亚洲精品美女91| 亚洲精品麻豆| 亚洲激情成人网| 亚洲第一二三四五区| 免费亚洲一区二区| 你懂的成人av| 亚洲国产成人精品久久久国产成人一区| 午夜国产精品影院在线观看| 在线亚洲国产精品网站| 小辣椒精品导航| 午夜伦欧美伦电影理论片| 亚洲欧美www| 久久精品欧美日韩| 欧美高清hd18日本| 亚洲人成免费| 性18欧美另类| 欧美成人精品不卡视频在线观看| 欧美 日韩 国产一区二区在线视频| 女人香蕉久久**毛片精品| 欧美黄色片免费观看| 国产精品黄视频| 尤物九九久久国产精品的特点 | 欧美国产日韩视频| 老司机精品福利视频| 亚洲免费成人av| 久久不射中文字幕| 欧美日韩国产小视频| 国产一区二区三区av电影| 亚洲人www| 久久精品国产综合精品| 日韩午夜激情av| 女仆av观看一区| 黑人巨大精品欧美一区二区| 亚洲婷婷在线| 亚洲国产欧美久久| 免播放器亚洲一区| 国产乱肥老妇国产一区二| 亚洲毛片av| 亚洲人永久免费| 欧美日韩八区| 亚洲一区国产一区| 亚洲国产欧美在线| 欧美精品在线观看| 日韩午夜在线| 一区二区三区av| 国产精品中文在线| 久久婷婷影院| 欧美凹凸一区二区三区视频| 亚洲区中文字幕| 99精品国产高清一区二区| 欧美午夜一区| 久久久青草婷婷精品综合日韩| 亚洲一区影音先锋| 在线观看三级视频欧美| 欧美成人午夜免费视在线看片| 嫩草成人www欧美| 亚洲视频精选| 久久久一本精品99久久精品66| 在线观看国产日韩| 欧美视频在线播放| 国产一区在线免费观看| 免费av成人在线| 国产精品theporn| 久久婷婷国产综合尤物精品 | 亚洲第一页中文字幕| 久久精品国产精品亚洲精品| 日韩视频免费在线| 性欧美18~19sex高清播放| 亚洲高清不卡在线| 久久精品五月婷婷| 欧美一级夜夜爽| 欧美日韩在线另类| 免费日韩成人| 国产日韩精品在线播放| 亚洲免费播放| 中日韩高清电影网| 欧美 日韩 国产一区二区在线视频| 亚洲在线一区二区| 欧美成人一区二区三区片免费| 久久gogo国模啪啪人体图| 国产精品日韩久久久久| 99热免费精品| 亚洲一区二区三区涩| 欧美日韩一区二区三| 一本色道久久| 欧美在线观看一区二区三区| 国产精品美女主播| 欧美亚洲三区| 久久亚洲欧美国产精品乐播|