2010-04-30 137 views
1

我的頁面拋出'system.outofmemoryexception'類型的錯誤異常。類型'system.outofmemoryexception'的異常被拋出

發生這種情況時,我按提交按鈕提交按鈕有存儲過程sqlconnections作爲填充數據網格。

它提供錯誤,當我把代碼提交按鈕。但是,當我把它放在頁面加載它很好。

任何人都可以幫助我解決這個問題。

感謝, Smartdev

+5

沒有看到代碼,這是幾乎不可能的任務。我的猜測是,你有一些代碼正在競爭狀態並吸取所有可用內存...... – 2010-04-30 13:09:57

+0

同意。你有一個無限循環或一個未終結的遞歸? – 2010-04-30 13:11:32

+0

這個異常包括一個堆棧跟蹤 - 它應該告訴你錯誤發生的地方,但不一定是爲什麼。使用調試器如WinDbg或內存分析器來告訴你什麼是佔用大量內存。 – 2010-04-30 13:25:43

回答

3

這意味着,您在程序中分配的內存太多。要麼在硬件零售店購買更多的內存,要麼在程序中使用更少的內存。

+7

購買更多內存不是答案 - OutOfMemoryException其最簡單的術語,屬於虛擬內存。不是物理內存。儘管如此,「使用更少的內存」部分更加合適。 – Rob 2010-04-30 13:22:16

0

奇怪的事情發生了 - 這就是我可以從你的描述告訴你。

這可能是一個錯誤的第三方控制。這可能是你的代碼中的一個bug,它可能是某種地方「固定」內存的東西。您可以合法地將內存不足...

您應該發佈錯誤的完整堆棧跟蹤。發佈你的內存利用率統計從您認爲發生錯誤的地方發佈一些代碼。

+1

這本來是一個評論。 – 2010-04-30 13:19:52

4

由於我的評論得到了upvotes ...我想我會張貼它作爲一個答案。

沒有看到你所有的代碼,幾乎不可能告訴你爲什麼你會得到Exception。

這就是說,我的猜測是你的事件處理程序中有一些競爭條件導致系統內存不足。很可能它是一個無限循環或一個未終止的遞歸方法。

+0

賈斯汀謝謝你的回覆,你是禮節我有一些代碼運行在頁面加載。清除它,還有一件事是該頁面有更多的1個lac記錄在網格視圖沒有分頁。當我添加分頁它工作正常。有沒有其他方式,我們可以提高頁面的性能,同時顯示更多的一個lac記錄 再次感謝 smartdev – SmartDev 2010-05-13 23:28:23

相關問題