Author: Robert Hyatt
Date: 15:17:59 04/25/01
Go up one level in this thread
On April 25, 2001 at 17:08:48, Vincent Diepeveen wrote: >On April 25, 2001 at 10:03:51, Robert Hyatt wrote: > >>On April 25, 2001 at 07:48:25, Vincent Diepeveen wrote: >> >>>On April 25, 2001 at 02:01:15, Hristo wrote: >>> >>>>On April 24, 2001 at 23:50:37, Robert Hyatt wrote: >>>> >>>>>On April 24, 2001 at 22:50:41, Hristo wrote: >>>>> >>>>>>select(..) doesn't do it. ;-((( >>>>>>wish it did!!!! >>>>>>select(..) works within a different domain and in general >>>>>>can not compare to WaitForMultipleObjects. ;-( >>>>>>WaitForMultipleObjects is, kind of like, select(..) on steroids! >>>>>>... >>>>>>The unix style is to keep things simple, which pays off when there >>>>>>is good design! >>>>>> >>>>>>hristo >>>>> >>>>> >>>>>why can't you produce the same effect with a group of descriptors? Writing >>>>>to such a descriptor from the "other end" will set that condition so that >>>>>select() will terminate... IE it seems like a small kludge, but it would >>>>>seem to allow the same sort of capability...??? >>>> >>>>How to make sure that all (ALL) descriptors are set before select returns. >>>>Lets say I want select to return wtith either ALL-descriptors-set or >>>>NO-descriptors-set? Perhaps it can be done!? For me it's easier to >>>>think of this problem as a bunch of cond+mutex variables... >>>>This is what MS can do to ya ... get people spoiled and lazy ... >>>>and offers complicated solutions ... you use them and then you are stuck, >>>>because one never takes the time to find the simple, elegant solution. >>>> >>>>hristo >>> >>>Oh well, you can also do things in assembly of course >>>that's even more low level as non-ms is offering. >>>I prefer highlevel things which are fast! >>> >>>But see my previous post to bob what i want. I have 2 possible >>>event which are set in shared memory: >>> a) go search >>> b) quit >>> >>>for a special linux implementation i can modify that to a gosearch >>>command always to then quit when getting out of the loop. >>> >>>No big probs to do that. So basically 1 event is what i can rewrite it >>>to. >>> >>>How to rewrite in linux next thing: >>> for( ;; ) { >>> sleep(100); >>> if( sharedtree->gosearch ) >>> break; >>> } >>> if( sharedtree->quitprogram ) >>> .. >>> >>>No problems here to rewrite it to this. Just want it solved for linux! >>> >>>Best regards, >>>Vincent >> >>Why not just let the I/O thread _kill_ the search process rather than telling >>it to exit. Or send it a signal where its signal handler will simply exit()? > >Shared memory doesn't get freed automatically in linux if a process gets >killed. I prefer to to it in a neat way :) > >Also it's hard to start a new process over and over again just for >every move, you filled killertables for nothing etc. Sure it can. Just catch the signal, detach the shared memory object, free it if you want, then exit.
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.