Java 播放Wav声音样本代码中的资源泄漏
从 以下代码是否可能存在资源泄漏?谁将负责关闭音频流Java 播放Wav声音样本代码中的资源泄漏,java,audio,Java,Audio,从 以下代码是否可能存在资源泄漏?谁将负责关闭音频流 public static void playAlertSound() { new Thread(new Runnable() { @Override public void run() { try { Clip clip = AudioSystem.getClip(); AudioInputStream input
public static void playAlertSound() {
new Thread(new Runnable() {
@Override
public void run() {
try {
Clip clip = AudioSystem.getClip();
AudioInputStream inputStream = AudioSystem.getAudioInputStream(Utils.class.getResourceAsStream("/sounds/door_bell.wav"));
clip.open(inputStream);
clip.start();
} catch (Exception e) {
log.error(null, e);
}
}
}).start();
}
您需要显式关闭该行,如下所示:
clip.addLineListener(new LineListener() {
public void update(LineEvent event) {
if (event.getType() == LineEvent.Type.STOP) {
event.getLine().close();
}
}
});
音频输入流怎么样?我也需要处理吗?