【发布时间】:2013-07-19 13:34:09
【问题描述】:
我已经为这个问题苦苦挣扎了两个小时,但仍然找不到解决方案。
其实我是 Java 新手,对 Java 的synchronized 一点也不熟悉。我什至不知道我是否需要使用synchronized 来实现我所需要的。
这是我的包的结构。
----------------------------
|----recorder.java
| -------captureScreen.java
| -------captureSound.java
|----start();
|----stop();
我正在为我的网络应用程序构建屏幕录像机。我已经制作了屏幕捕捉器和一个单独的类,它也可以录制音频。但我无法让它们同时工作。
我有
captureSound sound = new captureSound();
当我开始录音时,它会等到我停止录音机。 这里是我的问题所在。我想做的是在做sound.start()之后我的程序应该去执行recorder.java的其他语句,即recorder.java不应该等待captureSound()的执行。但它停止了。如何让它们同时运行?这样我以后就可以从我的recorder.java 本身做sound.stop()。
【问题讨论】:
-
花点时间educate yourself. 听起来你应该使用多线程或其他一些并发执行结构。
-
@MattBall 我确实看到了。我的理解是,在将
start()和stop()声明为同步时,recorder.java不应该等待start()完成。我是从某个给出颜色示例的地方得到的。
标签: java audio synchronization synchronized