• 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: Challenge: Block Main Thread while Work is done, with Timeout
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Challenge: Block Main Thread while Work is done, with Timeout


  • Subject: Re: Challenge: Block Main Thread while Work is done, with Timeout
  • From: Dave Keck <email@hidden>
  • Date: Fri, 24 Jul 2009 12:10:25 -1000

>> The notifications don't cross threads; they are delivered in the thread
>> where they are posted.
>
> Yes, I understand that.  There must be some quirk that allows it to work
> when doing an NSTask

Just a tidbit - I don't think there's any quirks involved. The general
idea is this: NSTask creates a run loop source on the main thread, and
spawns a second thread to watch the process for termination. When the
process terminates, the secondary thread signals the main thread's run
loop (via CFRunLoopSourceSignal()), and the run loop source's callback
then executes on the main thread, which issues the notification. On
10.5+, this can be done trivially using kqueue and CFFileDescriptor.

David
_______________________________________________

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: Challenge: Block Main Thread while Work is done, with Timeout
      • From: Ken Thomases <email@hidden>
    • Re: Challenge: Block Main Thread while Work is done, with Timeout
      • From: Charles Srstka <email@hidden>
References: 
 >Challenge: Block Main Thread while Work is done, with Timeout (From: Jerry Krinock <email@hidden>)
 >Re: Challenge: Block Main Thread while Work is done, with Timeout (From: Ken Thomases <email@hidden>)
 >Re: Challenge: Block Main Thread while Work is done, with Timeout (From: Jerry Krinock <email@hidden>)

  • Prev by Date: Re: Challenge: Block Main Thread while Work is done, with Timeout
  • Next by Date: Re: Challenge: Block Main Thread while Work is done, with Timeout
  • Previous by thread: Re: Challenge: Block Main Thread while Work is done, with Timeout
  • Next by thread: Re: Challenge: Block Main Thread while Work is done, with Timeout
  • Index(es):
    • Date
    • Thread