• 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: Weird Threads (repost)
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Weird Threads (repost)


  • Subject: Re: Weird Threads (repost)
  • From: Chris Meyer <email@hidden>
  • Date: Thu, 12 Feb 2004 17:54:19 -0800

You might want to check out http://developer.apple.com/documentation/Cocoa/Conceptual/ Multithreading/Tasks/appkit.html

Then you might want to restructure your code so that your drawRect: function is not threaded and draws a cached image.

Generate the cached image in the thread.

On Thursday, February 12, 2004, at 05:33 PM, Sam McCandlish wrote:

I am trying to use an NSThread for a complex drawing operation. In my custom view, when drawRect is called, I detach to another method in myself. The view draws fine. The problem is that the app still acts like it's not multithreaded, the interface still locks up until the drawing is complete. Any ideas?

Here is the drawRect function:
- (void)drawRect:(NSRect)rect {
[NSThread detachNewThreadSelector:@selector(drawRectThreaded:) toTarget:self withObject:NSStringFromRect(rect)];
return;
}

The first thread seems stuck in the following while the view is drawing (this is copied from the debugger)
#0 0x90017048 in semaphore_wait_signal_trap
#1 0x9000e890 in _pthread_cond_wait
#2 0x92dca068 in -[NSViewHierarchyLock lockForWriting]
#3 0x92dd494c in -[NSView _displayRectIgnoringOpacity:isVisibleRect:rectIsVisibleRectForView:]
#4 0x92ded8d0 in -[NSView displayIfNeeded]
#5 0x92dfe598 in -[NSWindow displayIfNeeded]
_______________________________________________
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.
_______________________________________________
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.

References: 
 >Weird Threads (repost) (From: Sam McCandlish <email@hidden>)

  • Prev by Date: Weird Threads (repost)
  • Next by Date: Re: Weird Threads (repost)
  • Previous by thread: Weird Threads (repost)
  • Next by thread: Re: Weird Threads (repost)
  • Index(es):
    • Date
    • Thread