2

deinitビューコントローラーで遅延プロパティを使用し、初期化されている場合にのみ遅延プロパティのメソッドをメソッドで呼び出すことが可能かどうかを知りたいです。いくつかのコードの下:

fileprivate lazy var session: MySession = {
    let session: MySession = MySession()
    session.delegate = self
    return session
}()

deinit {
    session.delete()
}

このようにsession.delete()deinitメソッド内で が呼び出さsessionれて使用されていない場合 (まだ使用されている場合nil)、初期化されてからdelete呼び出されます。私はこれをしたくありません。以前に初期化されていたdelete場合にのみ呼び出したいと思います。session

これを達成する方法はありますか?怠惰な初期化のアイデアを手放す必要がありますか?

4

1 に答える 1