(PHP 4 >= 4.1.0, PHP 5, PHP 7, PHP 8)
socket_set_nonblock — Establece el modo de no-bloqueo para el descriptor de archivo fd
La funciòn socket_set_nonblock() establece la bandera O_NONBLOCK
en el socket especificado por el parámetro socket
.
Cuando una operación (p.ej. recibir, enviar, conectar, aceptar, ...) se lleva a cabo sobre un socket de no-bloqueo, el script no pausará su ejecución hasta que reciba una señal o pueda realizar la operación. Más bien, si la operacion resultaría en un bloqueo, la llamada a la función fallará.
socket
Un recurso socket válido creado con socket_create() o socket_accept().
Ejemplo #1 Un ejemplo de socket_set_nonblock()
<?php
$socket = socket_create_listen(1223);
socket_set_nonblock($socket);
socket_accept($socket);
?>
Este ejemplo crea un socket de escucha en todas las interfaces en el puerto 1223 y establece el socket al modo O_NONBLOCK
. socket_accept() fallará inmediantamente a menos que haya una conexión pendiente en ese preciso momento.