• Open Menu Close Menu
  • Apple
  • Shopping Bag
  • Apple
  • Mac
  • iPad
  • iPhone
  • Watch
  • TV
  • Music
  • Support
  • Search apple.com
  • Shopping Bag

Lists

Open Menu Close Menu
  • Terms and Conditions
  • Lists hosted on this site
  • Email the Postmaster
  • Tips for posting to public mailing lists
NSNotificationCenter problem using new blocks style API calls
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

NSNotificationCenter problem using new blocks style API calls


  • Subject: NSNotificationCenter problem using new blocks style API calls
  • From: Jeremy Gordon <email@hidden>
  • Date: Mon, 5 Oct 2009 23:30:48 -0700

Hi,

I'm experiencing a problem with NSNotificationCenter when trying to use the new blocks style interface.

If I register an observer to call me back the traditional way via a selector, then all is well.

If I register an observer and pass it a block of code, the code in my block is never executed (well at least I don't see any log message, don't get any breakpoints, and if I put code with side effects in the block, I don't see the side effects happen).

I have tried passing in both [NSOperationQueue mainQueue] for the queue parameter as well as nil. Although the example code below shows me registering observers using both the traditional and block styles, I have tried this with registering either or of the two styles.

I am using blocks fine in other places in my own code where I copy the block passed to me and call it back when I've completed something. FYI, I am using Clang/LLVM, garbage collection is enabled and obviously I'm targeting 10.6 to be able to use the new API.

Must be something basic I'm missing...right? :)

Thanks!

Jeremy




- (void)myNotification:(NSNotification*)notification { NSLog(@"notified the traditional way, this is printed to the log"); }

- (id)init
{
	...

[[NSNotificationCenter defaultCenter] addObserver:self
selector:@selector(myNotification:)
name:@"myNotification"
object:myObject];

[[NSNotificationCenter defaultCenter] addObserverForName:@"myNotification"
object:myObject
queue:nil
usingBlock:^(NSNotification* notification)
{
NSLog(@"should be notified inside of the block, but never happens and nothing printed to the log");
}];


	...
}
_______________________________________________

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


  • Follow-Ups:
    • Re: NSNotificationCenter problem using new blocks style API calls
      • From: Jeremy Gordon <email@hidden>
  • Prev by Date: IB creating NULL outlet...
  • Next by Date: Re: NSNotificationCenter problem using new blocks style API calls
  • Previous by thread: Re: IB creating NULL outlet...
  • Next by thread: Re: NSNotificationCenter problem using new blocks style API calls
  • Index(es):
    • Date
    • Thread