For a threaded network application I'm developping, I have to watch
the number of concurrent connections.  I currently use this code:

if (curconns < maxconns) {
        curconns++;
}
else {
        pthread_cond_wait(&conns_is_at_max, &useless_mutex);
        continue;
}

curconns is decremented by other threads each time a connection is
finished and is only incremented in the main thread.

I use a condition variable to know when it is decremented so that I
can restart the loop and accept the connection.

I don't need a mutex but it seem the pthread code requires one.  The
manpages on pthreads are very scarce.  Is there a better/simpler way
to do this?

Help is apreciated (pointers to documentation, plain answers, or just
anything useful)
-- 
"They allowed us to set up a separate division almost, that is physically,
geographically, psychologically and spiritually different from what Bill 
himself calls the Borg"
 - Peter Moore, V.P. in charge of Xbox 360 marketing at Microsoft.

Reply via email to