Skip navigation.
 
mlRe: runloops and NSURLConnection
FROM : Torsten Curdt
DATE : Sun Jun 01 14:27:26 2008

> If you handle the modal session yourself, it's easy to let the 
> connection do some processing while the modal window is open:
> Replace -[NSApp runModalForWindow:[self window]] by this and it 
> should do the trick.
>
>    /* Create a modal session, and in each loop,
>    we process the default runloop event sources (url download, 
> network connections, etc.) */
>    NSModalSession session = [NSApp beginModalSessionForWindow:[self 
> window]];
>    for (;;) {
>      if ((result = [NSApp runModalSession:session]) != 
> NSRunContinuesResponse)
>        break;
>      /* Note: Do not use a 0 timeout, else this loop will never 
> block and will consume a lots of CPU.
>        In fact, the Cocoa UI event port is scheduled in the default 
> runloop, so each Cocoa event will wakeup the runloop. */
>      [[NSRunLoop currentRunLoop] runUntilDate:[NSDate 
> distantFuture]];
>    }
>    [NSApp endModalSession:session];


So that basically means I create my own run loop and call out into the 
non-modal one from time to time, right?
Just wondering about the "from time to time" part.

cheers
--
Torsten

Related mailsAuthorDate
mlrunloops and NSURLConnection Torsten Curdt May 31, 15:28
mlRe: runloops and NSURLConnection Michael Vannorsdel May 31, 16:09
mlRe: runloops and NSURLConnection Torsten Curdt May 31, 17:07
mlRe: runloops and NSURLConnection Jens Alfke May 31, 18:55
mlRe: runloops and NSURLConnection Michael Vannorsdel May 31, 19:03
mlRe: runloops and NSURLConnection Torsten Curdt May 31, 19:14
mlRe: runloops and NSURLConnection Jens Alfke May 31, 19:54
mlRe: runloops and NSURLConnection Jean-Daniel Dupas May 31, 19:58
mlRe: runloops and NSURLConnection Torsten Curdt Jun 1, 14:27
mlRe: runloops and NSURLConnection Torsten Curdt Jun 1, 14:28
mlRe: runloops and NSURLConnection Jean-Daniel Dupas Jun 1, 18:18