On Thu, 17 Apr 2014 18:08:43 -0400, Walter Bright
<[email protected]> wrote:
On 4/17/2014 1:53 PM, Steven Schveighoffer wrote:
OK, you beat it out of me. I admit, when I said "Video
processing/players with
network capability" I meant all FILE * I/O, and really nothing to do
with video
processing or networking.
I would expect that with a video processor, you aren't dealing with ARC
references inside the routine actually doing the work.
Obviously, if you are dealing with raw data, you are not using ARC while
accessing the data. But you are using ARC to get a reference to that data.
For instance, you might see:
-(void)processVideoData:(NSData *)data
{
unsigned char *vdata = data.data;
// process vdata
...
}
During the entire processing, you never increment/decrement a reference
count, because the caller will have passed data to you with an incremented
count.
Just because ARC protects the data, doesn't mean you need to constantly
and needlessly increment/decrement references. If you know the data won't
go away while you are using it, you can just ignore the reference counting
aspect.
-Steve