You could do:

NSOperation *op = [NSBlockOperation blockOperationWithBlock: ^{
    ...
}];
[NSOperationQueue mainQueue] addOperations: [NSArray arrayWithObject:
op] waitUntilFinished: YES]

or:

dispatch_sync(dispatch_get_main_queue(), ^{
    ...
});

but be very careful that you aren't already running on the main
thread, as you could deadlock.

On Mon, Mar 15, 2010 at 2:47 PM, Rick Mann <rm...@latencyzero.com> wrote:
> Then again, what I was doing before was really:
>
> [mTarget performSelectorOnMainThread: mSelector withObejct: data 
> waitUntilDone: true];
>
> which I don't see how to do with 1[addOperationWithBlock:];
>
> On Mar 15, 2010, at 14:46:28, Clark Cox wrote:
>
>> Indeed, such is the power of blocks :)
>>
>> On Mon, Mar 15, 2010 at 2:45 PM, Rick Mann <rm...@latencyzero.com> wrote:
>>> Oh! Sorry for the noise, but I think I can do this:
>>>
>>> [[NSOperationQueue mainQueue] addOperationWithBlock: ^{
>>>   myProvidedBlock(param1, param2);
>>> }];
>>>
>>>
>>> On Mar 15, 2010, at 14:35:39, Clark Cox wrote:
>>>
>>>> On Mon, Mar 15, 2010 at 2:32 PM, Rick Mann <rm...@latencyzero.com> wrote:
>>>>> Instead of passing my operation a target and selector, is there any way I 
>>>>> can just pass it a block, but then have it execute that block on the main 
>>>>> thread?
>>>>
>>>> [[NSOperationQueue mainQueue] addOperationWithBlock: ^{
>>>>    ...
>>>> }];
>>>>
>>>> or:
>>>>
>>>> dispatch_async(dispatch_get_main_queue(), ^{
>>>>    ...
>>>> });
>>>>
>>>>
>>>> --
>>>> Clark S. Cox III
>>>> clarkc...@gmail.com
>>>
>>>
>>
>>
>>
>> --
>> Clark S. Cox III
>> clarkc...@gmail.com
>
>



-- 
Clark S. Cox III
clarkc...@gmail.com
_______________________________________________

Cocoa-dev mailing list (Cocoa-dev@lists.apple.com)

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:
http://lists.apple.com/mailman/options/cocoa-dev/archive%40mail-archive.com

This email sent to arch...@mail-archive.com

Reply via email to