Path: utzoo!utgpu!water!watmath!clyde!att!rutgers!cmcl2!nrl-cmf!ames!pasteur!eris!korn From: korn@eris.berkeley.edu (Peter "Arrgh" Korn) Newsgroups: comp.sys.mac.programmer Subject: Re: LSC 3.0 Message-ID: <5059@pasteur.Berkeley.EDU> Date: 17 Aug 88 08:15:52 GMT References: <418@metasoft.UUCP> <5125@husc6.harvard.edu> Sender: news@pasteur.Berkeley.EDU Organization: What, me organized??? Lines: 58 In <5125@husc6.harvard.edu>, singer@endor.UUCP (Rich Siegel) said: >In article <418@metasoft.UUCP> alan@metasoft.UUCP (Alan Epstein) writes: >>what i'd really like to know is whether compilations can occur >>in the BACKGROUND. anyone know? > > No, and there's no good reason for them to do so. Backgroun >compilation is such a CPU-intensive task that it would slow down all of >the foreground tasks, and the foreground tasks will slow down compilation, >particularly if they don't give sufficient time via correct use of >WaitNextEvent. > > --Rich Rich, I have to take exception to this statement. Much of my time is spent typing. Typing in word-processors; typing in terminal emulators; typing in editors. In all three cases, with typing occuring in MPW, LSC, MS-Word, MS-Works, and uw, there is PLENTY of free cycles for background tasks to do work (if you don't believe me, take a look at one of the 'load monitoring' programs that's come across the net [like my Graphic Load Average program] and see for yourself just how much free time there is at any given moment). There are a number of CPU-intensive tasks that work beautifully in the background under the MacOS multitasking model. fracapp generates fractals quite nicely. MPW 3.0 alpha (I used to contract at Apple) executes shell scripts & does compilations quite well in the background. MPW 3.0 beta will supposedly hit the streets Real Soon Now, and you can verify that yourself. Yes, working in the background will mean that you will go slower. So? It will mean that *I* go faster because I'm not waiting for the compile. Fast as LightSpeedC is, it's not fast enough to complete before I can switch layers to another program and type a few lines. If you are worried about possibly executing slower when Multifinder is not running because you have to call WNE() or EA() more often, you can easily special case those situations either with a check box "run in the background", or simply check for "suspend events" and then call EA() frequently if you've gotten one. You claim that some foreground tasks will slow compilation (HyperCard is a good example). True. But if *I* decide to let the compilation take longer because I want to pop into Hypercard, then it's a better allocation of *my* time. Fine, let the compile take longer. The informed person can use a load monitoring program to get a feel for how "greedy" apps are in the foreground & background, and make their decisions on how to allocate their time based on that. But it should be the user's decision, not the program's. Peter -- Peter "Arrgh" Korn korn@ucbvax.Berkeley.EDU {decvax,hplabs,sdcsvax,ulysses,usenix}!ucbvax!korn