FROM : Paul Sargent
DATE : Mon Nov 26 21:38:10 2007
On 26 Nov 2007, at 17:44, Alastair Houghton wrote:
> On 26 Nov 2007, at 17:20, Paul Sargent wrote:
>
>> My question is this, I've created these NSDatas without copying the
>> bytes, so have I put myself in a position where the garbage
>> collector could release the memory beneath them if the original
>> fullDataDump NSData was released?
>
> Yes. The garbage collector doesn't support interior pointers. You
> need to keep the original object around by holding on to a reference
> to it until you're done with all of your data objects.
>
> A better approach to the problem would be to use NSData's -
> subdataWithRange: method; that will avoid having to do pointer
> arithmetic and will also avoid entirely the problem with the garbage
> collector.
Ahh, Thanks. Still not 100% familiar with all the functionality
available.
Just to be clear, -subdataWithRange will make a copy of the data into
it's own buffer, which the new NSData will own. Hence it'll be safe.
Right?
DATE : Mon Nov 26 21:38:10 2007
On 26 Nov 2007, at 17:44, Alastair Houghton wrote:
> On 26 Nov 2007, at 17:20, Paul Sargent wrote:
>
>> My question is this, I've created these NSDatas without copying the
>> bytes, so have I put myself in a position where the garbage
>> collector could release the memory beneath them if the original
>> fullDataDump NSData was released?
>
> Yes. The garbage collector doesn't support interior pointers. You
> need to keep the original object around by holding on to a reference
> to it until you're done with all of your data objects.
>
> A better approach to the problem would be to use NSData's -
> subdataWithRange: method; that will avoid having to do pointer
> arithmetic and will also avoid entirely the problem with the garbage
> collector.
Ahh, Thanks. Still not 100% familiar with all the functionality
available.
Just to be clear, -subdataWithRange will make a copy of the data into
it's own buffer, which the new NSData will own. Hence it'll be safe.
Right?
| Related mails | Author | Date |
|---|---|---|
| Paul Sargent | Nov 26, 18:20 | |
| Alastair Houghton | Nov 26, 18:44 | |
| Sherm Pendley | Nov 26, 18:56 | |
| Alastair Houghton | Nov 26, 19:00 | |
| Paul Sargent | Nov 26, 21:38 | |
| Alastair Houghton | Nov 26, 21:50 |






Cocoa mail archive

