/ / Encontré un código para reproducir mi canción, pero al hacerlo, todo el programa no responderá [cerrado] - java, crash, music

Encontré un código para enlazar mi canción, pero al hacerlo, todo el programa no responde [cerrado]: java, crash, music

Sé que estoy usando un código antiguo, pero lo encontré en la red y funciona para su putpuse. Pero, de nuevo, hace que todo el programa no responda.

Aquí está el código:

InputStream music;
int g = 0;

for (int i=2; i==2;g++){
try{
music= new FileInputStream(new File("D:\Hobby\maze game\Achievement and level scheme\Achievements and lvl\song.wav"));
AudioStream audios=new AudioStream(music);
AudioPlayer.player.start(audios);

long start = System.currentTimeMillis();
long end = start + 15240; // 60 seconds * 1000 ms/sec
while (System.currentTimeMillis() < end)
{

}
}
catch (Exception e){
JOptionPane.showMessageDialog(null, e.getLocalizedMessage());
}
}

Todo está en private void formWindowOpened entonces comienza a funcionar de inmediato.

Respuestas

1 para la respuesta № 1

La razón por la que todo su programa deja de responder es porque ese ciclo está bloqueando su hilo.

La forma más fácil de solucionarlo es creando un nuevo hilo y reproduciendo tu música desde allí.

new Thread(new Runnable() {
@Override
public void run() {
//play your song here
}
}).start();

Hay mejores maneras de hacer esto, permitiéndole controlar ese hilo desde otro, pero le dejaré encontrarlas por su cuenta.