Re: Non-blocking sockets
| From: | Eric | Date: | Sat, 28 Oct 2006 01:02:11 +0000 |
| Subject: | Re: Non-blocking sockets | ||
| References: | 1 2 | Groups: | php.general |
| Request: | Send a blank email to php-general+get-243780@lists.php.net to get a copy of this message | ||
Stut wrote:
Eric wrote:$socket = socket_create(AF_INET, SOCK_STREAM, SOL_TCP); socket_connect($socket,"news.csh.rit.edu",119); socket_set_nonblock($socket); socket_recv($socket,$buf,1024,0); echo $buf;When I create a socket/stream that connects to a news sever and try to recv data from the socket when there is nothing there (Like if the server sends one line and I call recv twice) the socket freezes. I assume this is because using socket_create or fsockopen creates a blocking TCP/Stream socket by default. When I call socket_set_nonblock() and the socket_connect I get "A non-blocking operation could not be completed immediately". Could someone show me exactly how to create a non-blocking TCP/Stream socket? Thanks in advance.I may be wrong but I think you need to set the socket non-blocking after the connect. You cannot do a non-blocking connect. -Stut Then the socket recv doesnt work. Gives me "Unable read from socket".