我正在写一个音乐播放器。当我从外部音乐文件中读取数据时,我会用幅度信息填充缓冲区。因为我认为将这个阻塞操作生成到它自己的线程中是有意义的,所以我添加了一个在 runnable 中运行它的接口:
public class AudioInterface implements Runnable {
public void run()
{
AudioManager am = new AudioManager();
am.play("res/sample2.mp3");
}
}
以下是我的以下问题:
- 如何从另一个类创建一个钩子来轮询幅度数据?我需要它来编写将绘制到 JPanel 画布上的算法。
- 启用可视化的面板是否也应该在不同的线程中?
- 目前 run() 仅包括播放文件,我将如何将此线程用于其他操作,例如摆姿势和寻找等,因为只有一个运行操作。
谢谢