我在onPreviewFrame
函数中有一个同步块。原因是我为两个不同的相机对象设置了两个预览回调,我需要同时使用onPreviewFrame
功能。由于onPreviewFrame
函数是一个非同步函数,我想知道当onPreviewFrame
函数内的同步块无法获取密钥时会发生什么? onPreviewFrame
功能是否被阻止,或者只是跳过同步块?我的代码看起来像这样:
@Override
public void onPreviewFrame(byte[] data, Camera camera) {
synchronized (key) {
//some code here
}
}
答案 0 :(得分:3)
线程将阻塞,直到它可以获取密钥(更准确地说,直到它可以进入与密钥相关联的监视器)。