2010-02-08 90 views
0

在WPF應用程序中加載大小爲70MB及以上的Flash文件時,它會成功運行一次或兩次,然後開始投擲OutofMemoryException。 但是當加載10MB到20MB的小型Flash文件時,它總是能夠成功運行。 以下是我們所遵循的步驟:內存不足異常

  1. ReadAllbytes的Flash文件。
  2. 創建MemoryStream上面的實例
  3. 使用f-in-box flash組件並傳遞MemoryStream作爲參數。

只是想知道是否有任何建議。 謝謝 N

+0

聽起來好像你沒有配置某些東西,根據你的評論它也會導致Visual Studio VM問題。 – 2010-02-08 04:41:05

+0

這是我在做什麼: 第1步:打開主窗口/父窗口。 第2步:當你點擊一個按鈕打開一個子窗口作爲對話框 第3步:當你點擊子窗口中的一個按鈕, 作爲對話框打開孫子窗口 在孫子窗口我也訂閱Dispatcher.ShutdownStarted。 但是我注意到,只有當Main/Parent窗口關閉時,纔會調用孫子窗口中的此事件。 這可能是我得到OOM異常的原因。 如果您有任何建議,請讓我知道。 謝謝 否 – 2010-02-08 11:28:33

回答

0

您是否在創建對象後清除對象?我不是WPF的人,但是在asp.net中,當我創建一個對象並忘記關閉它時,下次加載時會創建另一個實例。如果文件大小爲70MB,這可以非常快速地咀嚼內存

+0

是的,我打電話都關閉和處置記憶流。 – 2010-02-08 03:57:57

+0

我也注意到,VS 2008每隔一段時間就會生成一條錯誤消息,以便構建解決方案。如果您有任何建議,請告訴我。 謝謝 – 2010-02-08 04:17:28

+0

你可以發佈一小段代碼嗎? – 2010-02-08 21:56:44