我有两个线程。一个将音频数据记录到变量中。另一个线程将记录的变量发送到服务器。考虑到我是多线程新手,我需要在并发方面做些什么?
以下是代码片段:
short[] sData = new short[1024];
recordingThread = new Thread(new Runnable() {
public void run() {
android.os.Process.setThreadPriority(android.os.Process.THREAD_PRIORITY_URGENT_AUDIO);
while (isRecording) {
recorder.read(sData, 0, BufferElements2Rec);
}
}
}, "AudioRecorder Thread");
recordingThread.start();
还有一个线程正在访问相同的sData并将其发送到服务器:
Thread sendThread= new Thread(new Runnable() {
public void run() {
android.os.Process.setThreadPriority(android.os.Process.THREAD_PRIORITY_URGENT_AUDIO);
while (true) {
try {
ByteBuffer.wrap(bData).order(ByteOrder.LITTLE_ENDIAN)
.asShortBuffer().put(sData);
}
}
});
final static
。 - waqaslam