Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 27 Nov 1999 17:48:58 -0600 (CST)
From:      Rob King <jking@pernet.net>
To:        FengYue <fengyue@bluerose.windmoon.nu>
Cc:        hackers@FreeBSD.ORG
Subject:   Re: PThreads and Sockets
Message-ID:  <Pine.BSF.4.20.9911271746010.6921-100000@deadpixi.pernet.net>
In-Reply-To: <Pine.BSF.4.10.9911271507450.42278-100000@bluerose.windmoon.nu>

next in thread | previous in thread | raw e-mail | index | archive | help
> There is a race condition.  You're passing sd2's address to serverstart()
> and inside serverstart() you def' the pointer.  What if
> "sd2=accept(sd, (struct sockaddr*)&cad, &alen)" gets
> executed before your previous serverstart() finishs "sd2 = *((int*)ptr)"?
> 
> btw, IMHO, creating threads per connection is a very bad design.
> 
> 
> 
> To Unsubscribe: send mail to majordomo@FreeBSD.org
> with "unsubscribe freebsd-hackers" in the body of the message
> 

How would you recommend I do it? Please remember, I have no experience
with pthreads, and any advice you give would be greatly appreciated.

I tried doing a pool of threads created at startup, and I think that may
be a better approach...That would allow tighter control of resource limits
- do something like Apache, have a "maximum number" of processes running.

Anyway, thanks for the help.

Rob

-- 

Rob King
Network Administrator - PERnet Communications, Inc.
jking@pernet.net      - http://www.pernet.net/



To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-hackers" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?Pine.BSF.4.20.9911271746010.6921-100000>