Infatti il Event Dispatch Thread non va mai tenuto "impegnato" per troppo tempo, altrimenti la interfaccia utente diventa "congelata". La riproduzione dell'audio in quel modo con la Sound API è appunto "sincrono" e tiene impegnato il thread corrente. Difatti in quell'esempio la classe AePlayWave definisce un nuovo flusso (thread) di esecuzione.
Eseguendo la riproduzione in un thread a parte che non è il EDT, lo stop è possibile e fattibile ma va fatto in modo oculato avendo chiare alcune questioni basilari sul multi-threading.


Rispondi quotando