Re: Lockup Problem with Progress Indicator
Re: Lockup Problem with Progress Indicator
- Subject: Re: Lockup Problem with Progress Indicator
- From: Tim Hewett <email@hidden>
- Date: Sat, 3 Apr 2004 00:20:31 +0100
Brant,
I always update progress indicators using performSelectorOnMainThread:
when it has to be done from another thread. I understand that much of
Cocoa is not MT-safe and you are probably finding one part which shows
itself more readily than most, so forcing the operation onto the main
thread with this selector may help.
BTW if you create a selector to do this, make sure it takes a NSNumber
as the parameter and not a double - the withObject: parameter of
performSelectorOnMainThread: must convey an object (which double
isn't), otherwise it'll end in tears and less hair (it did for me).
Example:
[self performSelectorOnMainThread:@selector(setProgressBarValue:)
withObject:[NSNumber
numberWithDouble:100.0]
waitUntilDone:YES];
Regards,
Tim Hewett, Coolatoola.com
On 2 Apr 2004, at 21:56, email@hidden wrote:
I'm having some problems with NSProgressIndicator. I am running into
situations where my progress indicators are locking up and failing to
animate properly. I have a background thread that is performing an
operation
and attempting to update a determinate progress bar. I also have an
indeterminate progress indicator running (which is the spinning style).
Sometimes (maybe 50% of the time) these indicators become "stuck".
When this
happens, I notice that the heartbea thread seems to be stalled in a
wait
state waiting for some semaphore to be released.
It looks like the call is [NSViewHierarchyLock
lockForReadingWithExceptionHandler:] is being called.
My background thread is also calling realoadData on an NSTableView. The
table view is correctly being updated. I am not doing anything special
to
try to call reloadData from the maint thread - I just call it from the
background thread. I did try to make sure I at least start and stop the
progress indicators from the main thread.
Any ideas on what I could be doing wrong?
Brant Sears
_______________________________________________
cocoa-dev mailing list | email@hidden
Help/Unsubscribe/Archives:
http://www.lists.apple.com/mailman/listinfo/cocoa-dev
Do not post admin requests to the list. They will be ignored.