Re: Threaded drawing
Re: Threaded drawing
- Subject: Re: Threaded drawing
- From: Seth Willits <email@hidden>
- Date: Fri, 06 Dec 2013 09:24:03 -0800
On Dec 6, 2013, at 8:05 AM, email@hidden wrote:
>>> On 6 Dec 2013, at 11:26 am, Graham Cox <email@hidden> wrote:
>>>
>>> NSBlockOperation* op = [NSBlockOperation blockOperationWithBlock:^
>>> {
>>> CGContextClipToRect( ncx, tileRect );
>>>
>>> [self drawTile:tileRect inContext:ncx];
>>> }];
>>
>>
>> A question for blocks experts:
>>
>> Is the value of <tileRect> here captured when the block is created,or when it is run?
>>
>> If the latter, it’s going to be probably wrong most of the time, so how can I make sure it is captured when the block is created?
>>
>
>
> It's the latter IIRC
> You'll want to capture it outside and prefix it to be block scoped.
No it’s not and no you don’t.
int x = 3;
void (^block)(void) = ^{ NSLog(@"%d", x); };
x = 5;
block();
The result is 3 not 5.
--
Seth Willits
_______________________________________________
Cocoa-dev mailing list (email@hidden)
Please do not post admin requests or moderator comments to the list.
Contact the moderators at cocoa-dev-admins(at)lists.apple.com
Help/Unsubscribe/Update your Subscription:
This email sent to email@hidden