2012-09-05 41 views
1

我使用NSMutableData對象來存儲表示系列數據的32字節結構的列表。這些系列可能被擴展,添加,對齊等。爲了節省不必要的對象分配,我嘗試擴展字節並將其附加到現有對象,而不是分配新對象。NSMutableData錯誤(iPhone)

我注意到今天在模擬器中有一些奇怪的行爲:1)使用setLength和increaseByLength並不總是將所有新字節清零,2)在修改後使用這些對象導致崩潰。崩潰都在非常不同的地方,但總是EXC_BAD_ACCESS。經過相當多的調試後,我最終通過mutableCopy分配了新對象,並在完成時將它們分配給我的對象屬性。這解決了我遇到的所有問題。

*我正在使用後臺線程中的這些對象,但已將所有操作包裝在同步塊中,並且無法觀察有問題的對象上的任何競態條件。

有沒有人注意到類似的怪異?

謝謝。

+0

嗯,這是學期的開始,所以,是的,我注意到了類似的古怪。 –

回答

0

我還沒有收到答案,所以我想我會跟進我的解決方案。我最終重新分配新的NSData/NSMutableData對象,因爲我需要它們,並直接使用內存在將它包裝到NSData對象之前。