FROM : Jurgen Vermeiren
DATE : Tue Feb 05 23:31:32 2008
Well, I was doing a simple performSelector, meaning that the logging
method indeed was executed inside the secondary thread. The method in
question was synchronized, though, and writing to the drawer text view
from the thread did not seem to pose any problem. I'm not sure this
qualifies as careful (to quote you) but I'm now doing the whole thing with
performSelectorOnMainThread, which is certainly much safer and most of all
solves the drawer opening problem.
Many thanks!
> On Feb 4, 2008, at 12:31 PM, Jurgen Vermeiren wrote:
>
>> It all works well except that there is no way I can have the drawer to
>> open from within the secondary thread. The text view in the drawer
>> does
>> get updated but I won't see it if the drawer is not already opened.
>>
>> Any suggestion?
>
>
> You are calling the [drawer open] on the main thread by something like:
>
> [drawer performSelectorOnMainThread: @selector(open) withObject: nil
> waitUntilDone: YES];
>
> correct? Because doing any sort of UI from secondary threads is
> usually wrong*, and likely to not work (or worse)
>
> (*if you are careful, you can draw into a view from a secondary thread)
>
>
> Glenn Andreas <email_removed>
> <http://www.gandreas.com/> wicked fun!
> quadrium | flame : flame fractals & strange attractors : build,
> mutate, evolve, animate
DATE : Tue Feb 05 23:31:32 2008
Well, I was doing a simple performSelector, meaning that the logging
method indeed was executed inside the secondary thread. The method in
question was synchronized, though, and writing to the drawer text view
from the thread did not seem to pose any problem. I'm not sure this
qualifies as careful (to quote you) but I'm now doing the whole thing with
performSelectorOnMainThread, which is certainly much safer and most of all
solves the drawer opening problem.
Many thanks!
> On Feb 4, 2008, at 12:31 PM, Jurgen Vermeiren wrote:
>
>> It all works well except that there is no way I can have the drawer to
>> open from within the secondary thread. The text view in the drawer
>> does
>> get updated but I won't see it if the drawer is not already opened.
>>
>> Any suggestion?
>
>
> You are calling the [drawer open] on the main thread by something like:
>
> [drawer performSelectorOnMainThread: @selector(open) withObject: nil
> waitUntilDone: YES];
>
> correct? Because doing any sort of UI from secondary threads is
> usually wrong*, and likely to not work (or worse)
>
> (*if you are careful, you can draw into a view from a secondary thread)
>
>
> Glenn Andreas <email_removed>
> <http://www.gandreas.com/> wicked fun!
> quadrium | flame : flame fractals & strange attractors : build,
> mutate, evolve, animate
| Related mails | Author | Date |
|---|---|---|
| Jurgen Vermeiren | Feb 4, 19:31 | |
| glenn andreas | Feb 4, 19:59 | |
| Jurgen Vermeiren | Feb 5, 23:31 |






Cocoa mail archive

