一個對象從創(chuàng)建到釋放缤骨,不管是OC還是Swift,都有引用計數(shù)來管理尺借,在引用計數(shù)為0時绊起,程序會在一個恰當(dāng)?shù)臅r機把這個對象釋放。
“恰當(dāng)?shù)臅r機”是 線程Runloop的某個環(huán)節(jié)燎斩,但問題是虱歪,會在哪個線程里釋放呢?
經(jīng)測試瘫里,無論是在OC中還是Swift中实蔽,
dealloc都是在最后一次釋放的線程中執(zhí)行荡碾。
就是說谨读,一個對象,無論它在哪個線程總創(chuàng)建或者被使用坛吁,它只在最后一次release它的那個線程中執(zhí)行dealloc/deinit操作劳殖。