使用弱变量的循环引用导致nils的展开

时间:2016-01-13 16:35:25

标签: arrays swift reference weak

让我首先说我搜索了一个可以帮助我的话题,但我没有任何帮助。这是我的情况......

我创建了一个类sign,我在其中创建了变量thing1。然后我创建了一个名为arrayX的数组,使用sign。然后我使用NSURL会话从域中提取值。然后我创建了thingX来保存该值,最后我将arrayX附加了thingX的值。这工作很好,除了它看起来我有强大的循环引用和内存不能被释放。我尝试使用弱引用修复它,但偶尔空thingX导致我的应用程序崩溃,因为它试图打开一个零。请帮忙!!!

class sign {

    var thing1        = ""

    init(thing1: String) {

        self.thing1   = thing1

    }

}


var arrayX : [sign] = [sign]()


index1 = 0

while index1 < count {

      //NSURL will grab info info will grab a value from my domain and thingX will be given this value (occasionally the value will be empty)

     let thingX = ‘NSURL value’  as! String

     let data1 = sign(thing1: thingX)
     self.arrayX.append(data1)

     index1++

}

0 个答案:

没有答案