diff --git a/reference/sockets/functions/socket-select.xml b/reference/sockets/functions/socket-select.xml
index dd6cef95f..e0e7ddac2 100644
--- a/reference/sockets/functions/socket-select.xml
+++ b/reference/sockets/functions/socket-select.xml
@@ -1,6 +1,5 @@
-
-
+
@@ -64,7 +63,7 @@
seconds
-
+
Los argumentos seconds y microseconds
juntos forman el argumento timeout (duración).
El timeout es la duración máxima de tiempo antes de que
@@ -73,31 +72,32 @@
socket_select devuelva inmediatamente. Esto es muy
útil para hacer polling (sondaje). Si seconds es &null;
(sin timeout), socket_select puede bloquearse indefinidamente.
-
+
microseconds
-
-
+
+ Véase la descripción de seconds.
+
-
+
Al salir de la función, los arrays son modificados para indicar
qué sockets han cambiado de estado.
-
+ Las claves originales de los &array;s se conservan.
+
-
- No es necesario pasar todos los arrays a
- socket_select. Pueden ser omitidos, o
- puede usarse un array vacío, o incluso &null; en su lugar. No olvide
- que estos arrays son pasados por referencia y
- serán modificados por socket_select.
-
+
+ Los tres arrays deben pasarse todos, pero un array que no sea de interés
+ puede ser un &array; vacío o &null;; al menos uno de ellos debe ser un
+ &array; no vacío. Son pasados por referencia y son
+ modificados una vez que socket_select ha devuelto.
+
Debido a una limitación del motor Zend actual, no es posible
@@ -121,13 +121,13 @@ socket_select($r, $w, $e, 0);
&reftitle.returnvalues;
-
+
En caso de éxito, socket_select devuelve el número de
sockets contenidas en los arrays modificados. Este número puede ser cero si
se alcanzó el tiempo máximo de espera. En caso de error, &false;
es devuelto. El código de error generado puede ser obtenido llamando a la
función socket_last_error.
-
+
Asegúrese de usar el operador ===
@@ -205,9 +205,9 @@ if ($num_changed_sockets === false) {
- Si escribe o lee con un socket devuelto en un array,
- tenga en cuenta que no podrá escribir o leer todas las datos
- que solicite. Esté preparado para poder leer solo un byte.
+ Al leer de un socket devuelto en los arrays, o al escribir en él,
+ tenga en cuenta que no se lee ni se escribe necesariamente la totalidad
+ de los datos solicitados. Esté preparado para tratar tan solo un byte.
@@ -225,14 +225,13 @@ if ($num_changed_sockets === false) {
&reftitle.seealso;
-
-
- socket_read
- socket_write
- socket_last_error
- socket_strerror
-
-
+
+ socket_read
+ socket_write
+ socket_last_error
+ socket_strerror
+ stream_select
+
diff --git a/reference/stream/functions/stream-select.xml b/reference/stream/functions/stream-select.xml
index 775cd4774..955885dcd 100644
--- a/reference/stream/functions/stream-select.xml
+++ b/reference/stream/functions/stream-select.xml
@@ -1,5 +1,5 @@
-
+
@@ -16,12 +16,15 @@
intnullseconds
intnullmicroseconds&null;
-
+
stream_select acepta un array de flujos y
- espera a que alguno de ellos cambie de estado. Esta operación es
- equivalente a lo que hace la función socket_select,
- salvo que trabaja sobre un flujo.
-
+ espera a que alguno de ellos cambie de estado. Es el equivalente de
+ socket_select para los flujos, pero ambas funciones no
+ se comportan igual en todos los aspectos: no señalan los argumentos
+ inválidos de la misma manera, y stream_select puede
+ terminar sin consultar en absoluto al sistema operativo, tal como se describe
+ en las notas siguientes.
+
@@ -232,18 +235,28 @@ if (false === stream_select($r, $w, $e, 0)) {
-
- Si ha escrito o leído en un flujo que es retornado en los arrays
- de flujos, sea consciente de que estos flujos pueden no haber escrito
- o leído la totalidad de los datos solicitados. Sea
- capaz de leer un solo byte.
-
+
+ Al leer de un flujo devuelto en los arrays, o al escribir en él, tenga en
+ cuenta que no se lee ni se escribe necesariamente la totalidad de los datos
+ solicitados. Esté preparado para tratar tan solo un byte.
+
-
+
Algunos flujos (como zlib) no pueden ser
seleccionados por esta función.
-
+
+
+
+
+ Un flujo que ya dispone de datos almacenados en el búfer del lado de PHP se
+ señala como listo sin que se realice la llamada
+ select() subyacente. En ese caso, los arrays
+ write y except se vacían sin
+ haber sido examinados: un flujo que estaba listo para escritura no se
+ señala, y el valor de retorno solo cuenta los flujos disponibles para
+ lectura.
+
Compatibilidad con Windows
@@ -264,6 +277,7 @@ if (false === stream_select($r, $w, $e, 0)) {
&reftitle.seealso;
stream_set_blocking
+ socket_select