Stream.availableForWrite()
De ArduWiki
Revisión del 19:59 11 jul 2018 de Lucario448 (Discusión | contribuciones) (Primera vez que creo una página wiki desde cero :D)
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();
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);