作者sinread (电脑真耗钱)
看板MacDev
标题[问题] 从 main thread perform 其他的 thread
时间Fri Oct 1 18:12:55 2010
小弟有一段code如下, 请各位先进给我一点意见:
- (void)RunVideoStream:(id)destView
{
videoStream = [[myStream alloc] init];
videoStream.channel = 0;
xxx
streamThread = [[NSThread alloc] initWithTarget:self selector:@selector(StreamStart) object:nil];
[streamThread setName:@"stramOne"];
[streamThread start];
}
- (void)StreamStart
{
NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init];
while(!exitNow)
{
[videoStream Connect];
}
[pool release];
}
xxx
- (void)SwitchCH:(id)objct
{
NSLog(@"Got to change Channel : %d", [objct intValue]);
}
- (void)pickerView:(UIPickerView *)pickerView didSelectRow:(NSInteger)row inComponent:(NSInteger)component
{
NSNumber *nowCH = [NSNumber numberWithInt:row];
[self performSelector:@selector(SwitchCH:) onThread:streamThread withObject:nowCH waitUntilDone:NO];
}
当UIPickerView被选取到某个row, 会变换 channel, 但是我目前这样的写法, 无法从
main thread 去 perform streamThread,
请问我该怎麽做才可以让两个thread 沟通?
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 124.219.26.209
※ 编辑: sinread 来自: 124.219.26.209 (10/01 18:14)
1F:→ zonble:NSPicker?这是什麽 Class? 10/01 18:55
2F:→ sinread:UIPickerView 没仔细去看原来的宣告XD 更正一下 10/01 19:16
※ 编辑: sinread 来自: 124.219.26.209 (10/01 19:16)