如何确保我的AVCaptureSession有足够的时间运行?

时间:2016-12-27 23:46:39

标签: ios objective-c avcapturesession avcapture

我需要确保我的AVCaptureSession在停止前运行15秒。我怎么能这样做?我对使用等待睡眠犹豫不决,因为我很确定它会停止输入的输入。在运行stop命令之前,我可以使用什么等待15秒?

示例代码:

[self.session startRunning];
// wait 15 seconds 
[self.session stopRunning]; 

1 个答案:

答案 0 :(得分:1)

睡眠确实会让一切都戛然而止。不要那样做。

您可以使用对dispatch_after的调用:

import Pyro4
# using Python3.4.2

if __name__ == '__main__':
    uri = 'PYRO:TestAPI@localhost:9999'
    remote = Pyro4.Proxy(uri)
    response = remote.hello('hello')
    print('server said {}'.format(response))
    remote.shutdown()
    remote._pyroRelease()
    print('client exiting')

另一种选择是设置CADisplayLink并测试每次调用是否已经过了15秒,但除非你需要毫秒精度,否则上述情况应该没问题。