Вывод отладки Xcode 7: ОШИБКА: 177: таймаут mMajorChangePending = 0

Я вижу следующую ошибку в консоли отладки Xcode 7 build 6 при запуске моего приложения в симуляторе iOS 9:

2015-08-27 11:31:25.464 Reps[87841:2572333] 11:31:25.463 ERROR:    177: timed out after 0.012s (589 590); mMajorChangePending=0

Кто-нибудь еще видел это? Есть идеи, что это значит?


person phatmann    schedule 27.08.2015    source источник
comment
Я получил его в OS X во время воспроизведения аудио, думая, что это может быть связано с AVAudioPlayer. Бета-версия Xcode 7.1 (7B60).   -  person Henrik    schedule 12.09.2015


Ответы (3)


Не могли бы вы опубликовать больше кода для этого?

У меня была такая же ошибка, и оказалось, что я был глуп. Я уже объявил var player = AVAudioPlayer() вне viewDidLoad.

Я тогда пытался let player = try AVAudioPlayer....

Я избавился от let, так как я уже объявил эту переменную. Бог знает, о чем я думал, помещая туда let! Кажется, теперь все работает нормально :)

person Prateek    schedule 28.09.2015
comment
Я не уверен, какой код опубликовать! Однако, судя по комментарию Хенрика выше и вашему ответу, проблема заключается в AVAudioPlayer, поскольку я использую его в своем коде. Теоретически одновременная работа нескольких экземпляров не должна быть проблемой, но мне придется немного поэкспериментировать. - person phatmann; 29.09.2015
comment
У меня нет ключевого слова let, и я использую четыре экземпляра AVAudioPlayer(), однако в консольном сообщении появляется только что-то. Я не уверен, в чем может быть проблема. - person Rajan Maharjan; 11.12.2015

Я только что столкнулся с похожей проблемой с другим номером ошибки при пересмотре старого приложения. Он был написан на Objective C под iOS 4 и синтезирует звук без использования XIB или раскадровки, и он успешно перешел на AVFoundation под iOS9. Внося последние штрихи, я столкнулся с этой странной проблемой, хотя у нее был другой номер ошибки. Я нашел несколько отчетов об ошибке 177 и ошибке 181, в основном разработчиками Swift.

Я получил этот отчет, когда нажал кнопку, чтобы остановить воспроизведение звука.

2016-06-15 14:50:16.370 SatGam[2598:148012] tapped Button 17
2016-06-15 14:50:16.384 SatGam[2598:148012] 14:50:16.383 ERROR:    181: timed out after 0.012s (1908 1909); mMajorChangePending=0
2016-06-15 14:50:16.387 SatGam[2598:148012] launch with full gradient background
2016-06-15 14:50:16.387 SatGam[2598:148012] load FamilyView

Кнопка 17 предназначена для отключения звука перед переключением на другой ViewController, что было успешно выполнено перед переходом в режим отладки. Следующий комментируемый оператор case описывает, что он делал в то время.

    case 17:                    // stop button
        [synthLock lock];       // lock synthLock
        [synth stopAllNotes];   // change synth i.e. mute sound
        [synthLock unlock];     // unlock synthLock
        [timer invalidate];     // kill the timer
        timer = nil;            // and then
        [timer release];        // release it

        // [lastEventChangeTime release];   // this was switched off

        [player release];       // release old view controller
        [synth release];        // release synth
        [synthLock release];    // release synth lock

        [self goToFamilyView];  // go to new view controller
        break;

Я не выпустил lastEventChangeTime, свойство, связанное с таймером, используемым для воспроизведения звука. Поэтому я удалил комментарии в начале этой строки, повторно запустил свой проект на симуляторе, нажал кнопку 17, и проблема исчезла.

Судя по тому, что вы нам рассказали, проблема, которую вы описываете, скорее всего, связана с чем-то неправильным, когда воспроизведение звука начинается или останавливается. Опубликуйте код с несколькими комментариями, указывающими, что вы пробовали, и я уверен, что кто-то с большим опытом работы со Swift сможет помочь. Удачи.

person Greg    schedule 15.06.2016
comment
Спасибо за исследование и информацию. Если я найду еще какие-нибудь подсказки, я опубликую их. - person phatmann; 23.06.2016

Это работает для меня

переменный звук :SystemSoundID = 0

функция Звук () {

    let rightSound = NSURL(fileURLWithPath: NSBundle.mainBundle().pathForResource("sound", ofType: "wav")!)

    AudioServicesCreateSystemSoundID(rightSound, &sound)

    AudioServicesPlaySystemSound(self.sound);


}
person sabita samal    schedule 24.06.2016