-(void)startTask;
представляется частной реализацией и теоретически не должен вызываться из внешних классов.
Чтобы ответить на ваш вопрос, вы можете назвать его примерно так:
PtyView *v = [[PtyView alloc] init];
[v startTask];
[v release];
Хотя вы получите предупреждение о том, что PtyView
может не отвечать на startTask
.Поскольку он не находится в общедоступном интерфейсе класса.
Обновление : Приведенный выше код предполагает, что при возврате startTask
с этим объектом покончено.Но что-то подсказывает мне, что вы можете использовать асинхронные обратные вызовы.Если это так, то startTask
может немедленно вернуться, и вы не отпустите его тогда и там.Обычно в этом случае вы будете уведомлены PtyView
о завершении задания.Таким образом, вы освобождаете его, когда задача завершена.
Update2 : сделать метод общедоступным легко.Вы просто объявляете это в общедоступном интерфейсе (файл заголовка класса):
//in PtyView.h
@interface PtyView
-(void)startTask;
@end
//in PtyView.m
@implementation PtyView
...
-(void)startTask {
//starts task
}
@end
Обратите внимание, что в объявлении интерфейса не определена категория.