Как использовать делегат в NSStream?
Я новичок в Objective-C. Я пытаюсь научиться работать сNSStream
, Я просто использовал простой код из службы поддержки Apple. Этот код должен открыть поток из файла на моем рабочем столе и показать простое сообщение, когда iStream вызывает делегат. В конце кода я вижу, что статус правильный, но делегат никогда не вызывается. Что мне не хватает?
#import
@interface MyDelegate: NSStream {
}
- (void)stream:(NSStream *)stream handleEvent:(NSStreamEvent)eventCode ;
@end
@implementation MyDelegate
- (void)stream:(NSStream *)stream handleEvent:(NSStreamEvent)eventCode {
NSLog(@"############# in DELEGATE###############");
}
@end
int main(int argc, const char * argv[])
{
@autoreleasepool {
MyDelegate* myDelegate=[[MyDelegate alloc]init];
NSInputStream* iStream= [[NSInputStream alloc] initWithFileAtPath:@"/Users/Augend/Desktop/Test.rtf"];
[iStream setDelegate:myDelegate];
[iStream scheduleInRunLoop:[NSRunLoop currentRunLoop]
forMode:NSDefaultRunLoopMode];
[iStream open];
NSLog(@" status:%@",(NSString*) [iStream streamError]);
}
return 0;
}