Вот псевдокод того, чего я хочу достичь:
let a = AClass()
let go = NSMutableArray()
go.add(a)
.
.
.
class AClass{
.
.
.
fileprivate func removeMyselfFromCollection() { //Called from within the class
//TODO: How to remove myself from the collection I am in.
}
}
Это может быть любая коллекция, массив или словарь и т. Д. Что-то похожее на removeFromSuperview()
Обновление:Отвечая на общий вопрос ...
Вопрос: Зачем мне это нужно?
Ответ: Сценарий немного сложен, но сводит его к большинству основных деталей.Я загружаю файлы (аудио, видео, звук) в удаленное хранилище.Как только файлы загружены, у меня есть механизм (слушатели), чтобы узнать, когда мои файлы там, мне не нужны локальные объекты, чтобы сообщить мне статус.Я добавляю локальные объекты в глобальную коллекцию, чтобы они оставались в живых до тех пор, пока файлы не будут загружены (один объект представляет каждый файл).Каждый объект заботится о каждом загружаемом файле.Мне бы хотелось, чтобы каждый из моих объектов автоматически удалялся из глобальной коллекции после завершения загрузки (причина объяснена выше).