저는 Jlayer를 사용하여 Java에서 mp3 노래를 재생할 때 한 번에 한 스레드 씩 문제가되는 문제에 대한 솔루션을 사용했습니다. 그러나 Kaleb Brasee의이 솔루션은 플레이어를 어떻게 멈출 수 있는지, 즉 어떻게 player.close()를 호출 할 수 있었는지에 대해 암시하지 않았습니까?현재 재생중인 노래를 멈추는 방법 JLayer로 하나의 스레드를 사용할 때?
Executor executor = Executors.newSingleThreadExecutor();
executor.execute(new Runnable() { public void run() {
/* do something */
} });
이 내가 실행에 넣어 코드()
if(player != null) player.close();
try{
player = new Player(new FileInputStream(musicD.getPath()));
player.play();
}catch(Exception e){}
문제는이 정도는 동안 GUI가 활성 유지의 문제를 해결하는 것이입니다 :
Kaleb의 코드였다 음악을 재생합니다 (단 하나의 다른 스레드에서 - 내가 원하는 것). 다른 노래를 재생할 수 없습니다 .-(
무엇을 할 수 있습니까?