Un elenco collegato può essere utilizzato per implementare una coda di messaggi.
Una coda di messaggi è una struttura in cui vengono archiviate le informazioni sugli eventi per l'elaborazione successiva. Ad esempio, quando l'utente preme un tasto o sposta il mouse, questo è un evento. Un'applicazione potrebbe essere occupata nel momento in cui si verifica l'evento, quindi non ci si può aspettare che elabori l'evento nel momento esatto in cui si verifica. Quindi, l'evento viene inserito in una coda di messaggi, (informazioni su quale tasto è stato premuto, o dove è stato spostato il mouse) e quando l'applicazione ha un po 'di tempo da perdere, controlla la coda dei messaggi, recupera gli eventi da esso e processa loro. (Questo accade in un lasso di tempo di millisecondi, quindi non è evidente.)
Dallo scenario di utilizzo che ho appena descritto, dovrebbe essere ovvio che non ci interessa mai avere accesso casuale agli eventi memorizzati nella coda dei messaggi; ci interessa solo essere in grado di archiviare messaggi e recuperarli. Quindi, ha senso usare un elenco collegato, che fornisce un tempo di inserimento / rimozione ottimale.
(Si prega di non entrare nel gioco per indicare che una coda di messaggi è probabile, o più probabile, o quasi altrettanto probabile, da implementare usando una lista circolare di array, che è un dettaglio tecnico, e ha una limitazione: tu è possibile memorizzare solo un numero limitato di messaggi.)