在viewdidload里面我加了两条Thread
[NSThread detachNewThreadSelector:@selector(gotortsp) toTarget:self
withObject:nil];
dispatch_queue_t mainQueue = dispatch_get_main_queue();
dispatch_async(mainQueue, ^{
[[NSNotificationCenter defaultCenter] addObserver:self
selector:@selector(getUserProfileSuccess:)
name:@"Notification_GetUserProfileSuccess" object:nil]; });
-(void)gotortsp
{
[self runrtsp];
}
- (void) getUserProfileSuccess: (NSNotification*) aNotification
{
NSLog(@"in");
[self.spinner stopAnimating];
self.DisplaytoImage = [aNotification object];
}
由于runrtsp是建立一个live555连线一直传封包进来让ffmpeg解码 解完码再借由
notification回传到这里的imageview update ui
我把回传的写在dispatch_get_main_queue();
为什么没办法更新ui呢@@
可是log却有印in的讯息 代表他有进来 但是却没有更新ui
由于runrtsp是个一直持续不间断的收封包 所以只能做callback回来更新ui
因为不间断 所以无法使用dispatch_queue_create()会一直卡在里面...
应该要怎么做才能够确实的更新ui呢...拜托各位帮我解答了