我有一个.wav文件需要播放。我正在使用以下代码:
public static synchronized void play(String path) {
try {
URL soundUrl = SoundTools.class.getResource(path);
AudioInputStream stream = AudioSystem.getAudioInputStream(soundUrl);
AudioFormat format = stream.getFormat();
DataLine.Info info = new DataLine.Info(Clip.class, format);
Clip clip = (Clip) AudioSystem.getLine(info);
clip.open(stream);
clip.start();
}
catch (Exception e) {
System.out.println(e.getMessage());
e.printStackTrace();
}
}
代码运行一段时间后表现良好,但大约播放30次后,出现了javax.sound.sampled.LineUnavailableException
。错误信息显示无法获取线路unable to obtain a line
。我认为这与系统资源有关,但我不知道该如何解决它。