我使用AVAudioPlayer
与主线程并发使用dispatch_async
系列isPlaying
。在播放每个之前我必须查询是否正在使用其multithreading
方法播放。
我通常不熟悉isPlaying
,那么如何在AVAudioPlayer
当前正在处理的主题上调用{{1}}方法呢?
答案 0 :(得分:0)
您可以直接在主线程上访问属性playing
因为操作已被读取,所以我认为这是安全的:)
但您无法使用它来判断回放是否已按文档说明完成:重要提示:请勿轮询此属性以确定回放何时完成,而是实施指定的委托方法 < / p>
你应该使用委托并实现方法- (void)audioPlayerDidFinishPlaying:(AVAudioPlayer *)player successfully:(BOOL)flag
,如果调用该方法,则意味着玩家停止。