From: "Paul Derbyshire" Newsgroups: comp.os.msdos.djgpp References: <9805182355 DOT AA23366 AT gcef DOT gc DOT maricopa DOT edu> Subject: Re: Threading and asynchronous processes Lines: 29 Organization: The Chaos Zone MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit Message-ID: Date: Tue, 19 May 1998 02:46:32 GMT NNTP-Posting-Host: 206.172.228.152 NNTP-Posting-Date: Mon, 18 May 1998 22:46:32 EDT To: djgpp AT delorie DOT com DJ-Gateway: from newsgroup comp.os.msdos.djgpp Precedence: bulk Joshua James Turpen <44699 AT ef DOT gc DOT maricopa DOT edu> wrote in message <9805182355 DOT AA23366 AT gcef DOT gc DOT maricopa DOT edu>... >PDMLWP (based on LWP) does indeed use the DJGPP signal mechanism for task >switching. If one thread spawns "command.com", threading safely stops >until command.com returns, due to the nature of signal handling under DJGPP. How does it manage this, using a timer interrupt to plant a signal whose handler manages task switching? What signal is used? >AFAIK It's pretty much the only 'legal' way under DPMI to change >contexts in an asynchronous manner. I was forced to go to great lengths >and use nasty DPMI tricks in order to do it any other way. How so... are there any other mechanisms? Which if any wouldn't bomb under WIndows, or Desqview, or some other non-CWSDPMI environment? Is there a way to at least run multiple DJGPP programs using such a scheme, or would it be easier to design a method of dynamically loading modules? -- .*. "Clouds are not spheres, mountains are not cones, coastlines are not -() < circles, and bark is not smooth, nor does lightning travel in a `*' straight line." ------------------------------------------------- -- B. Mandelbrot |http://www3.sympatico.ca/bob.beland/indexn2f.html _____________________ ____|________ Paul Derbyshire pderbysh AT usa DOT net Programmer & Humanist|ICQ: 10423848|