• 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
Re: unable to break out of runloop because timers are fired and then the loop waits
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: unable to break out of runloop because timers are fired and then the loop waits


  • Subject: Re: unable to break out of runloop because timers are fired and then the loop waits
  • From: Nick Zitzmann <email@hidden>
  • Date: Wed, 24 Sep 2008 13:38:35 -0600


On Sep 24, 2008, at 1:15 PM, Jason Bobier wrote:

Hey folks, I have a runloop on a thread that looks like this:

while (! _cancelled) {
NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init];

[runloop runMode:NSDefaultRunLoopMode beforeDate:[NSDate distantFuture]];
[pool release];
}


And I put a timer in the loop that sets _cancelled to true, the runloop never stops. What's the proper way to do this?


Don't run it until the distant future; that'll cause the call to block until some time in 400X, by which time you probably won't be using your current Mac anymore. :) Instead, you should run shorter intervals (like a second from now), and if you need NSEvents to trigger during the time, then you should probably use -[NSApplication nextEventMatchingMask:...] instead with dequeueing. That method also runs the specified run loop.

Nick Zitzmann
<http://www.chronosnet.com/>

_______________________________________________

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: unable to break out of runloop because timers are fired and then the loop waits
      • From: Jason Bobier <email@hidden>
References: 
 >unable to break out of runloop because timers are fired and then the loop waits (From: Jason Bobier <email@hidden>)

  • Prev by Date: setPrimitiveValue:forKey: and to-many relationships
  • Next by Date: Re: Creating alias programatically
  • Previous by thread: unable to break out of runloop because timers are fired and then the loop waits
  • Next by thread: Re: unable to break out of runloop because timers are fired and then the loop waits
  • Index(es):
    • Date
    • Thread