ue5的确对pendingKill做了改动,由于pendingKill会将对象的强引用改成弱引用,并在下次垃圾回收时将其置空,因此比较危险,尽管在ue5中仍然支持PendingKill,但所有对PendingKill的函数已经被移除,Obj->IsPendingKill()的调用已被替换为 IsValid(Obj)、IsValidChecked(Obj)或 GetValid(Obj),Obj->IsPendingKillOrUnreachable()的调用也被替换为 IsValid*函数,Obj->MarkPendingKill() 和 Obj->ClearPendingKill() 已分别被 Obj->MarkAsGarbage() 和 Obj->ClearGarbage() 替换。这两组函数的区别在于后者仅将对象标记为“Garbage”,GC不会尝试将其引用置为空。