Ben Giddings wrote: > I'm going to assume you really misunderstand and aren't trolling, > because even if you are trolling, maybe this explanation will come in > useful for someone else. > > Chris Reay wrote: > >> if select([@sock], [], [], 0.1) >> @sock.recv() >> etc, etc. >> >> Your program is asking the "recv" block to be called if select() >> returns true. > > > Actually no. In Ruby, as I showed in my previous message, "if _____" > doesn't test to see if "_____" is true or false, it check to see if it > is true, false, nil, or another object. > > If _____ is false, then the conditional is not executed. If _____ is > nil, then the conditional is executed. Otherwise, whether _____ is the You mistyped here --------> is not executed. ... > boolean 'true' or whether it is any other non-nil, non-false object, the > conditional is executed. >