Skip to content

Instantly share code, notes, and snippets.

@Otbivnoe
Created September 12, 2017 07:10
Show Gist options
  • Save Otbivnoe/2c17ab3d40aa340afb5b39453da27bec to your computer and use it in GitHub Desktop.
Save Otbivnoe/2c17ab3d40aa340afb5b39453da27bec to your computer and use it in GitHub Desktop.
let disposable1 = Disposables.create { print("disposed-1 ☠️") }
let refCountDisposable = RefCountDisposable(disposable: disposable1)
let holdDisposable1 = refCountDisposable.retain()
let holdDisposable2 = refCountDisposable.retain()
print("main dispose")
refCountDisposable.dispose()
print("hold1 dispose")
holdDisposable1.dispose()
print("hold1 dispose")
holdDisposable2.dispose()
// log:
// main dispose
// hold1 dispose
// hold2 dispose
// disposed-1 ☠️
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment