找到Swift内存泄漏的确切位置

时间:2018-02-02 08:01:28

标签: ios swift xcode8

我有一个班级:

class MyObject {
    var id = 0

    init() {
        print(“MyObject created”)
    }

    deinit {
        print(“MyObject released”)
    }

    static func new() -> MyObject {
        let obj = MyObject()
        obj.id = RandomNumber() // only calculation
        return obj
    }
}

我在View控制器中的代码:

var myObj: MyObject!

override func viewDidLoad() {
    super.viewDidLoad()

      self.myObj = MyObject()
  }

  deinit {
    print(”ViewController released")
  }

MyObject和ViewController都是根据我的日志发布的。但是当我使用Xcode的Memory Debug Graph工具检查时,我仍然有内存泄漏。

enter image description here

您可以看到该对象不属于任何人,但我看到该对象已被释放。任何人都可以建议导致内存泄漏的原因是什么?感谢。

0 个答案:

没有答案