La necessità di un controllo di flusso su un'interfaccia seriale asincrona dipende completamente dalle esigenze dell'applicazione. A volte una velocità di trasmissione più lenta può abbassare la velocità dati effettiva per alleviare la necessità di controllo del flusso, ma anche questo dipende dall'applicazione.
Esistono alcune tecniche che possono consentire a un'applicazione di funzionare a velocità di trasmissione più elevate senza la necessità di utilizzare l'handshaking di controllo del flusso. Uno di questi consiste nell'utilizzare una tecnica di invio e ricezione UART guidata da interrupt e accodare il flusso di dati tra il codice della linea principale dell'applicazione e le routine di interrupt tramite buffer FIFO circolari.
L'uso dei buffer FIFO deve essere fatto in base al fatto che il processore dell'applicazione possa gestire gli interrupt UART alla velocità dei caratteri (cioè baud_rate / bits_per_transmission_unit). Se non è in grado di gestire quella velocità di interrupt più il piccolo overhead imposto dalla gestione del buffer FIFO, allora sarebbe necessario abbassare la velocità di trasmissione abbastanza da permettere il funzionamento della velocità di interrupt.
A volte il processore dell'applicazione avrà un UART che include un FIFO hardware integrato. Se questi vengono utilizzati insieme a uno schema di buffering FIFO gestito da interrupt, può essere vantaggioso per la progettazione della routine di servizio di interrupt svuotare i FIFO hardware di ricezione o riempire completamente i FIFO hardware di trasmissione al momento dell'interrupt da / per il il software gestiva buffer FIFO che normalmente sarebbero di dimensioni maggiori. Configurato e codificato correttamente, questo può abbassare la velocità di interruzione netta che un processore di applicazioni deve gestire a qualsiasi velocità di trasmissione particolare.