Closing socket graceful
<?php
socket_shutdown($resHandle, 1);//remote host yet can read
usleep(500);//wait remote host
socket_shutdown($resHandle, 0);//close reading
socket_close($resHandle);//finaly we can free resource
?>
socket_shutdown
(PHP 4 >= 4.1.0, PHP 5)
socket_shutdown — Shuts down a socket for receiving, sending, or both
설명
bool socket_shutdown
( resource $socket
[, int $how= 2
] )
The socket_shutdown() function allows you to stop incoming, outgoing or all data (the default) from being sent through the socket
인수
- socket
-
A valid socket resource created with socket_create().
- how
-
The value of how can be one of the following:
possible values for how 0 Shutdown socket reading 1 Shutdown socket writing 2 Shutdown socket reading and writing
반환값
성공할 경우 TRUE를, 실패할 경우 FALSE를 반환합니다.
socket_shutdown
korvin at biz dot by
21-May-2009 09:12
21-May-2009 09:12
richard dot thomas at psysolutions dot com
23-Nov-2005 06:20
23-Nov-2005 06:20
That is not a good example of a graceful shutdown. One should close the sending side of the socket and continue to read until the remote end closes its sending connection.
ludvig dot ericson at gmail dot com
02-Sep-2005 08:13
02-Sep-2005 08:13
Sockets should be first shutdown and then closed.
<?php
// Sample: Closing sockets gracefully
socket_shutdown($sock, 2);
socket_close($sock);
?>
