我有我的應用程序(VC MFC)使用啓用了Pageheap的gflags運行來跟蹤頁堆損壞。CSocket ::在我的MFC應用程序中創建拋出異常
現在,應用程序已經崩潰,它顯示了這個錯誤,我無法解釋這些行(除有資源inavailablity的感覺)
任何人都可以扔在究竟是什麼,才造成原因的光應用程序崩潰?
(信息:應用程序是一個多線程的一個約500線程中運行,在一個多 - 處理器的機器)
kernel32!RaiseException+53
msvcrt!_CxxThrowException+36
mfc42u!AfxThrowResourceException+19
mfc42u!AfxRegisterWndClass+ab
mfc42u!CAsyncSocket::AttachHandle+5c
mfc42u!CAsyncSocket::Socket+25
mfc42u!CAsyncSocket::Create+14
是的頁面堆需要更多的內存,但我們想要的是堆腐敗注入點。 如果我們讓我們的appln在這個加載的條件下運行,那麼應用程序會崩潰。 這裏是另一個崩潰點,它在這個特定位置墜毀的很多實例,只要我們在高端機器上運行應用程序(8核心和4 GB RAM) mfc42u!CFixedAlloc :: Alloc + 5c mfc42u! CString :: AllocBuffer + 25 mfc42u!CString :: CString + 3e WP_Communications_Server!CWPGenericService :: AddToMessageLog + b9 任何線索?我們被困在這個問題超過2周。 – buddingspacer 2009-07-20 11:14:57
您是否需要Full Pageheap,或者您可以使用Normal來嘗試每個http://support.microsoft.com/kb/286470? 由於堆已損壞,它可能會在任何地方崩潰。你從來沒有回答過我的問題 - 在測試過程中是否有機會減少運行的線程以節省資源?或者當你有500個線程運行時,行爲只會上升嗎? – 2009-07-21 07:10:49