В моем проекте у меня есть структура с неопубликованной ссылкой на экземпляр класса. Пытаться перебрать массив из этих структур заставляет мое приложение бесконечно зацикливаться. Но даже более сумасшедший, я могу пропустить пустой массив, набранный для этой структуры, и это все еще происходит.Итерация по массиву структур с неопубликованной ссылкой бесконечно
В этом примере я использовал ссылку на NSString, чтобы сделать образец меньшим, но использование пользовательского класса не помогает.
Также обратите внимание, что это поведение наблюдается только на 64-битных устройствах и симуляторах, но не на 32-разрядных. Я тестировал с помощью Xcode 6.1, 6.1.1 и 6.2.
struct TestStruct {
unowned let reference: NSString
}
let anArray: [TestStruct] = []
for anObject in anArray {
NSLog("This is called endlessly")
}
Я делаю что-то неправильно? Разве это не поддерживается? Или это просто краткая ошибка, о которой я должен сообщить?
Очевидно, ошибка, не так ли? Действительно хорошая ошибка. Хороший пример, хорошее тестирование. К сожалению, я могу только возвысить один раз! – matt
Испытывали ли вы испытания на своей машине и видели проблему? Я переустановил Xcode, перезапустил много раз с тех пор, как обнаружил это, но у меня все еще есть надежда, что это как-то моя машина. – Acey
Вы с ума сошли? Я не собираюсь запускать этот код! Мой компьютер может взорваться. Вы уже разрушили свой. – matt