Java创建线程池实现异步音频播放器
一、编程规约
l阿里的P3C开发规范插件会给出警告:
private static ExecutorService executor = Executors.newFixedThreadPool(4);
lJava多线程异步音频播放器:
实现Java音频播放器时,支持多线程异步播放,创建线程池时遵守《阿里Java开发手册》规约。
代码下载:https://github.com/rickding/HelloJava/tree/master/HelloAudio
class Player implements Runnable {
private static ScheduledExecutorService executorService = new ScheduledThreadPoolExecutor(
4,
new BasicThreadFactory.Builder().namingPattern("audio-player-pool-%d").daemon(true).build()
);
public static void asyncPlay(URL fileUrl) {
if (fileUrl == null) {
return;
}
// 播放进程
Player player = new Player();
try {
player.audioStream = AudioSystem.getAudioInputStream(fileUrl);
} catch (UnsupportedAudioFileException e) {
System.err.println(e.getMessage());
} catch (IOException e) {
System.err.println(e.getMessage());
}
executorService.execute(player);
}
}
声明:本站所有文章资源内容,如无特殊说明或标注,均为采集网络资源。如若本站内容侵犯了原著者的合法权益,可联系本站删除。