On 01/27/2002 23:00, "Entourage:mac Talk"
<[EMAIL PROTECTED]> wrote:

> 
> 11. when checking mail, sometimes other programs get chunky (better than
> when Eudora checked mail so it's a step forward for me but still not as good
> as it should/could be)
>   I thought we have pre-emptive multi-tasking here.  I have a 550 TiBook.
> It should have no problem checking mail and a movie playing
> 
So here's a dirty little secret about Carbon that is killingn a lot of app
performance...from Apple's Dev Docs, specifically
<http://developer.apple.com/techpubs/macosx/Carbon/oss/ThreadManager/Thread_
Manager/Miscellaneous/ManagerIntro.html>:

"For example, Human Interface Toolbox functions, such as those belonging to
the Window Manager and Control Manager, are not reentrant. Hence, they can't
be scheduled preemptively but must instead rely on the classic Mac OS
cooperative multitasking model. "

From 
<http://developer.apple.com/techpubs/macosx/Carbon/CarbonPortingTools/carbon
_porting_guide/cpg_intro_struct/Carbon_and__ation_Model.html>

"In Mac OS X, each Carbon application is scheduled preemptively against
other Carbon applications. For calls to most low-level operating system
services, Mac OS X also supports preemptive threading within an application.
Because most Human Interface Toolbox functions are not reentrant, however, a
multithreaded application will initially be able to call these functions
only from cooperatively scheduled threads. Thread-based preemptive access to
all system services�including the Human Interface Toolbox�is an important
future direction for the Mac OS."


Not that Cocoa is much better. The list of stuff that isn't fully thread
safe in Cocoa is rather impressive as well. Okay, more de- than im-, but
very pressive nonetheless. Which explains a lot about why E'rage and the
rest are still weird in certain ways.

 
john


-- 
There is no type of human endeavor where it is so important that the leader
understands all phases of his job as that of the profession of arms.
- Major General James C. Fry 


--
To unsubscribe:                     <mailto:[EMAIL PROTECTED]>
archives:       <http://www.mail-archive.com/entourage-talk%40lists.letterrip.com/>
old-archive:       <http://www.mail-archive.com/entourage-talk%40lists.boingo.com/>

Reply via email to