home *** CD-ROM | disk | FTP | other *** search
- Newsgroups: comp.programming
- Path: sparky!uunet!think.com!spool.mu.edu!umn.edu!csus.edu!netcom.com!pdh
- From: pdh@netcom.com (Phil Howard )
- Subject: Re: Network Chat Messaging Algorithm
- Message-ID: <1992Dec31.023104.13944@netcom.com>
- Organization: Netcom - Online Communication Services (408 241-9760 guest)
- References: <1h8752INNn3i@darkstar.UCSC.EDU> <1h9k9hINN670@uwm.edu>
- Date: Thu, 31 Dec 1992 02:31:04 GMT
- Lines: 25
-
- markh@csd4.csd.uwm.edu (Mark) writes:
-
- >Net lag is not causing those problems, select() is. Always check for blocking
- >even if set in non-blocking mode, because select() sometimes blocks regardless.
- >Or, better, don't use select(). Use fork().
-
- Of course select() blocks. It's supposed to if none of the fd's have anything
- and the time is non-zero.
-
- And fork() won't necessarily solve anything. You STILL have the situation
- where ONE process has to wait for things from at least 2 different sources,
- even if those sources are children processes.
-
- While these function names tend to be UNIX specific, the same situation
- exists regardless of system type and interface. Simply having more processes
- does not solve the problems that have to be dealt with by a program that is
- going to be merging and multiplexing data that has random arrival order.
-
- I have some specific solution possibilities, but I'll be sending them by
- e-mail since they are not relevant to comp.programming.
- --
- /************************************************************************\
- | Phil Howard, pdh@netcom.com, KA9WGN Spell protection? "1(911)A1" |
- | "It's not broken... it's just functionally challenged" --Phil and Pete |
- \************************************************************************/
-