Author: Andreas Herrmann
Date: 11:23:46 09/09/03
Go up one level in this thread
On September 09, 2003 at 04:10:53, Tony Werten wrote: >On September 09, 2003 at 03:21:34, Andreas Herrmann wrote: > >>On September 09, 2003 at 02:14:08, Tony Werten wrote: >> >>Hi Tony, >> >>i have just read inside a Delphi internals book last week a 50 side long capitel >>about Thread programming. It says that all local vars are save, but pay >>attention for global vars. See the help to the win api function >>EnterCriticalSection or the VCL object TCriticalSection as a good starting point >>to this theme. >> >>Andreas > >Thanks ( to all) > >It seems that "write" is not threadsafe when used for writing to the console. I >added some checks to make sure only 1 thread is writing at a time. Hope this >solves the problems. > >The problems became worse when I changed from writeln to write which seems >logic: more time spend in writing so bigger change for collisions. > > >Tony yes that can be a problem. I don't have this problem, because only my main thread (= the chess engine) writes to the standard output and my second thread polls the standard input and writes it to a own global buffer. Your problem could also be solved with Mutex (like Robert describes). See CreateMutex or OpenMutex for further help. Andreas > >> >> >> >>>Hi, >>> >>>maybe a silly question, but one get quite desperate during debugging. Suppose I >>>have the followin code: >>> >>>procedure whatever(param:integer) >>>begin >>> do_something_heavy_with_param; >>>end; >>> >>>Say, the heavy stuff takes about 10 seconds. >>> >>>If during these secs another thread is calling this function, what happens ? >>> >>>Does every thread gets a "local copy" of the function ? >>> >>>On a single processor, there is a context switch, stuff is pushed on a stack, >>>and everything is safe. >>> >>>What about a dual ? I get the feeling that param is actually changed by the >>>second call. >>> >>>Tony
This page took 0 seconds to execute
Last modified: Thu, 15 Apr 21 08:11:13 -0700
Current Computer Chess Club Forums at Talkchess. This site by Sean Mintz.