Una cola es un concepto de nivel más alto que una secuencia. Los elementos base de una cola son un mensaje / objeto, que es una estructura de datos coherente (generalmente escrita) que el consumidor puede interpretar por sí mismo. Por otro lado, en la base de una secuencia , hay bits / bytes / caracteres (generalmente de tamaño fijo) que, por sí solos, generalmente no tienen sentido para la aplicación. Una secuencia de estos caracteres puede componer un "mensaje", pero una API de flujo deja que la aplicación divida la secuencia de caracteres en fragmentos sensibles.
Una API Stream generalmente también permite lecturas y escrituras parciales, si los buffers de flujo están llenos y el otro lado no está leyendo / escribiendo; las aplicaciones que manejan colas generalmente esperan que la cola las maneje internamente.
Se puede implementar una cola en la parte superior de una secuencia, esto se realiza mediante la implementación de la trama del mensaje. Por ejemplo, TCP proporciona una interfaz de flujo, HTTP se construye sobre TCP y agrega el encuadre de mensajes utilizando la codificación Content-Length / transferencia fragmentada. Los usuarios de una API de conexión HTTP no pueden lidiar con la división de la secuencia de conexión HTTP a las solicitudes HTTP.
Por otro lado, por lo general, tiene menos sentido implementar una API de flujo en la parte superior de una cola, ya que el manejo de la trama de mensajes agrega una sobrecarga innecesaria.