我是否需要在Thread中运行AudioServicesCreateSystemSoundID

时间:2013-02-11 21:01:30

标签: ios objective-c xcode ios6

我正在使用AudioServicesCreateSystemSoundID播放声音,它工作正常,但我不确定是否需要在线程块上运行它,或者它本身就在它自己的线程上运行。

我只是担心如果它在主线程上运行,它可能会使我的应用程序无法响应。

NSURL *tapSound   = [[NSBundle mainBundle] URLForResource: @"mysound"
                                                withExtension: @"aiff"];

    // Store the URL as a CFURLRef instance
    //   soundFileURLRef = (__bridge CFURLRef) tapSound ;

    // Create a system sound object representing the sound file.

     SystemSoundID  soundFileObject;

    AudioServicesCreateSystemSoundID (

                                      (__bridge_retained CFURLRef) tapSound,
                                      &soundFileObject
                                      );
    // AudioServicesPlayAlertSound (soundFileObject);
    AudioServicesPlaySystemSound (soundFileObject);

1 个答案:

答案 0 :(得分:1)

声音将异步播放。你需要在自己的线程中运行它。