Привязка ReactiveCocoa MutableProperty создает цикл сохранения, утечки памяти
У меня простой UIViewViewController
приложение с UILabel
выход. у меня есть такой MutableProperty<String?>
что я связываю с label.reactive.text
это вызывает 57 утечек памяти. Всегда ли связывание двух изменяемых свойств приводит к утечке памяти, если так, то почему?
class ViewController: UIViewController {
@IBOutlet weak var testLabel: UILabel!
let testText: MutableProperty<String?> = MutableProperty("")
override func viewDidLoad() {
super.viewDidLoad()
let signal = textSignal()
testText <~ signal
testLabel.reactive.text <~ testText
DispatchQueue.main.asyncAfter(deadline: .now() + 6) {
UIApplication.shared.keyWindow?.rootViewController = UIViewController()
}
}
func textSignal() -> SignalProducer<String, NoError> {
return SignalProducer<String, NoError>{ (sink: Observer, disposable: Disposable) in
DispatchQueue.main.asyncAfter(deadline: .now() + 1) {
sink.send(value: "Hello world")
print("sink Hello world")
}
DispatchQueue.main.asyncAfter(deadline: .now() + 2) {
sink.send(value: "Wabbu Labbu dub dub")
print("sink Wabbu Labbu dub dub")
}
DispatchQueue.main.asyncAfter(deadline: .now() + 3) {
sink.sendCompleted()
print("sink compeleted")
}
}
}
}