Я использую версию Swift DEVELOPMENT-SNAPSHOT-2016-06-06-a
. Я не могу обойти эту проблему, я пытался использовать @noescape
в разных местах, но у меня все еще есть следующая ошибка:
Закрытие не может неявно захватывать параметр mutating self
Чтобы лучше объяснить, вот простой пример:
public struct ExampleStruct {
let connectQueue = dispatch_queue_create("connectQueue", nil)
var test = 10
mutating func example() {
if let connectQueue = self.connectQueue {
dispatch_sync(connectQueue) {
self.test = 20 // error happens here
}
}
}
}
Что-то должно измениться в этих двоичных файлах Swift, которые теперь приводят к разрыву моего предыдущего рабочего кода. Обходной путь, который я хочу избежать, делает мою структуру классом, что помогает в устранении проблемы. Дайте мне знать, есть ли другой способ.