2012-11-10 36 views
2

連接導致泄漏我創建了一個測試項目,以確認我的內存泄漏: 項目文件:https://dl.dropbox.com/u/3703182/PickerView.zipUIPickerView當通過數據源

基本上一個UIPickerView通過IB連接到數據源。當它連接到數據源時,它會泄漏。如果不是,則不會泄漏。我需要使用UIPickerView作爲即將發佈的即將發佈的應用程序,但不幸的是,它確保了每2小時發生一次因爲泄漏而發生的崩潰。儘管內存泄漏沒有崩潰,我如何使用UIPickerView?

編輯: 它只泄漏在設備上,而不是在模擬器中。

+0

什麼是重現泄漏的步驟。當我嘗試運行你的代碼時,它沒有顯示任何選擇器,我必須將它從內部視圖移到外部視圖才能顯示它。不過,在兩種情況下我都看不到任何泄漏。你可以嘗試上傳顯示泄漏的確切代碼嗎? – iDev

+0

這是顯示泄漏的確切代碼。我應該提到你必須在設備上運行它,因爲模擬器沒有顯示泄漏。點擊「Picker」按鈕,然後點擊「back」。在樂器中做一個快照,它會顯示這些泄漏:http://img844.imageshack.us/img844/5200/screenshot20121113at633.png – ninjaneer

+0

我不這麼認爲,你的應用程序會因此泄漏而崩潰。檢查是否有其他內容正在使用大量內存。屏幕截圖中的泄漏顯示了一些框架,您不必擔心。 – iDev

回答

0

添加我的意見作爲答案,

您的應用程序不會崩潰,由於此泄漏,因爲它是由框架,你不必擔心一個非常小的泄漏。屏幕截圖顯示它是以幾個字節爲單位的。如果您的應用每2小時崩潰一次,那意味着有其他內容正在使用大量內存。請檢查您是否在代碼中使用了可能會導致此問題的其他內容,並使用您的發現更新問題。

在分配工具中,確保您正在檢查活動字節部分,並檢查它的上升速度。如果它保持在15-20 MB以下,反正你不必擔心太多。檢查這個關於memory usage in app的更多細節。同時檢查這個XCode Instruments Allocations: Look at Live Bytes or Overall Bytes?

0

這是泄露的Apple庫。你無法對此做任何事情。這是蘋果的錯。

+0

有沒有辦法解決它? – ninjaneer

+0

對不起,沒有。這應該不會影響你的應用程序,因爲如果你看,框架泄漏非常少。 –

1

這不是泄漏。這是一個分配。 如果是泄漏,它會在第二排顯示紅色尖峯。 泄漏的真正考驗是提出和解僱幾次。如果你能做到這一點,並表明分配繼續增加,那麼就有泄漏。否則。

+0

我曾多次出席和解散。名單不斷增長。任何其他方式呢? – ninjaneer

0

這不是泄漏,你可以控制,它是內部的......但這是一個非常小的內存量,不會使應用程序崩潰。我有興趣看到這看起來像一個小時在...你能提供一個崩潰的回溯?這可能會更好地幫助確定事故的真正原因。