Diferencia entre revisiones de «Stream.availableForWrite()»
De ArduWiki
(→Sintaxis) |
(→Vea también) |
||
Línea 25: | Línea 25: | ||
== Vea también == | == Vea también == | ||
+ | * [[Stream]] | ||
* [[Stream.begin()]] | * [[Stream.begin()]] | ||
* [[Stream.available()]] | * [[Stream.available()]] |
Revisión del 20:49 12 jul 2018
Contenido
Descripción
Obtiene el número de bytes (caracteres) disponibles para la escritura (pendientes de ser enviados) hacia el flijo de salida, sin bloquear la operación de escritura.
Sintaxis
objetoStream.availableForWrite();
Parámetros
- objetoStream
- Nombre de la instancia de la clase Stream
Retorna
El número de bytes disponibles para escribir (int).
Advertencias
- Si la clase manipula un flujo de salida byte a byte asincrónico (con buffer), esta función debe implementarse y además debe hacerlo de manera que cumpla lo descrito en la sección de Descripción y Retorno. Para flujos por bloques, es opcional; pero si se hace, se recomienda que retorne 0 si el bloque en caché no necesita transmitirse (solo lectura), o que retorne el tamaño de dicho bloque (en bytes) en el caso contrario. No se debe implementar en flujos de salida byte a byte sincrónicos (sin buffer)'.
Ejemplo
Serial.write(buffer, 64); // En cierto grado, 64 bytes a la vez es bastante
int pendientes = Serial.availableForWrite(); // Si el flujo de salida es lo suficientemente lento, se podrá capturar un valor mayor que cero
Serial.flush(); // Esperar a que los datos pendientes se hayan enviado, para así imprimir al final el valor capturado
Serial.println(pendientes);