2011-06-10 72 views
0

這是一個哲學問題。我的程序發送需要更多內存的消息。我釋放所有的內存給它,繼續正常工作。但是,這個程序告訴我需要更多的內存,而且我沒有人釋放。我現在應該做什麼?我釋放了所有可以使用的內存,但是我的程序需要更多,我該怎麼辦?

當ZBar庫使用相機時,幾乎會發生這種情況,所以我無法控制ZBar(我無法釋放它的內存,只有我的內存)。這確實需要很多內存才能工作。因爲這個,我不知道我在做什麼。

該程序沒有崩潰,但可以運行不穩定。

+0

你正在寫什麼樣的應用程序。下一個合乎邏輯的步驟是開始優化內存。開始使用C數組而不是NSArrays,並使用結構代替對象。如果你絕對需要,你可以緩存到磁盤/閃存。 – Maz 2011-06-10 14:55:52

+0

我更新它。當這種事情幾乎發生時,不是好事。 – Rodrigo 2011-06-10 15:04:36

+0

我對ZBar並不熟悉,但也許有不同的庫可以用來完成相同的任務,它比ZBar使用更少的內存。 – 2011-06-10 17:13:13

回答

6

如果沒有更多的細節,你的問題,你的答案將是含糊:)

顯而易見的答案是使用更少的內存。

如果取決於您正在使用的內存,但您可以考慮將其放入磁盤上的文件並只讀取您需要的數據?

你還應該檢查是否有泄漏 - 你可能在沒有意識到的情況下使用內存。

如果您發佈有關您確切問題的更多信息,我們可能會幫助更多。

+0

Lol,sory。我編輯並顯示更多。問題是當我將相機與庫一起使用而不是使用文件時,會發生這種情況。因爲這個,我覺得沒有更多的內存可以發佈。 – Rodrigo 2011-06-10 15:03:32

+0

使用較少的內存是一個很好的答案:P – Rodrigo 2011-06-10 15:03:48

+0

好的,所以一個文件不能幫你太多。假設你的意思是你正在使用'ZBarReaderViewController',那麼當你調用dismissModalViewController時,它應該釋放所有的內存? – deanWombourne 2011-06-10 15:32:54

相關問題