doh! I've been treating -startLoading as a sync routine that must return a final result to the caller, and just now realized that I can return from the routine without completing the request, while the caller will be kept blocked on that request untill I respond with URLProtocolDidFinishLoading (and from a different thread if need to) so the "rewrite your code async" comment all of a sudden sounds great :)
Except can I get a confirmation please that the client using the protocol handler will not reuse it untill request is completed (i.e. it wont use the same instance to make another request once I return from -startLoading, untill it gets a completion like a final redirect or URLProtocolDidFinishLoading)?? Basically I'm trying to confirm that I don't have to save the request somewhere else and keep track of it separately outside of the initial NSURLProtocol instance itself. On Thu, Sep 6, 2012 at 11:55 AM, Dan S <danc...@rebelbase.com> wrote: > if you meant using the grand central dispatch, i think that only became > available in 10.6, I need to support this for 10.5 > > > On Thu, Sep 6, 2012 at 11:25 AM, Dan S <danc...@rebelbase.com> wrote: > >> No, actually I've completely missed that it was answered. Thank you. >> >> Unfortunatelly, the requester is expecting a return data, error or a >> redirect. And until the api can be respeced, the sync response has to stay >> in. It isn't that it needs to load from network every request, but some >> volotile data does have to check the server to pull down the changes before >> serving the data. >> >> I will try to offload the server access to a different thread (though I >> still need to block the protocol thread because I still have to return the >> correct data for the current call). >> >> but now I'm also curiouse of what you mewant by posting a block to >> another dispatch queue ? >> >> >> On Thu, Sep 6, 2012 at 7:55 AM, Jean Suisse <jean.li...@gmail.com> wrote: >> >>> Hi, >>> >>> Fritz Anderson is right. We can only agree. >>> And recently, they made following Jens Alfke's advice incredibly easy. >>> Just post a block to one of the available dispatch queues (not the one >>> running on your main thread thought) and let it run its curse. >>> >>> Jean >>> >>> On 6 sept. 2012, at 16:36, Fritz Anderson wrote: >>> >>> > From what Google tells me, you got a prompt response from Jens Alfke, >>> a very experienced Cocoa-networking programmer, explaining why what you're >>> doing shouldn't be expected to work. Are you looking for a workaround, or >>> just for somebody who will give you better news? I don't think better news >>> is in the cards. >>> >>> >>> On 29 août 2012, at 22:58, Jens Alfke wrote: >>> >>> > If you must use a synchronous API, spawn a new thread to run it on. >>> > >>> >>> >>> >>> >> > _______________________________________________ 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: https://lists.apple.com/mailman/options/cocoa-dev/archive%40mail-archive.com This email sent to arch...@mail-archive.com