2011-05-25 262 views
1

嗨,大家好,一个线程在iPhone应用程序中杀死另一个线程(两个线程都是主线程)?

==>在我的应用我已经使用三种不同线程代码,其中之一是这里的所有线程都是同一种
==>我在AppDelegate类 定义的两个线程==>一个根视图控制器 ==>所有线程具有不同的睡眠时间

我的问题是,没有任何线程可能会被其他和调用时间一个线程杀死获得受其他?

-(void)PostData 
{ 
NSAutoreleasePool *apool = [[NSAutoreleasePool alloc] init];// we are responsible for the memory pool 

while(TRUE) 
{  
    [self performSelectorOnMainThread:@selector(PostAllthedata) 
          withObject:nil 
         waitUntilDone:YES]; 
    [NSThread sleepForTimeInterval:150]; 

} 
[apool release]; 
} 

-(void)PostAllthedata 
{ 
PostSyncData *objPostSyncData=[[PostSyncData alloc]init]; 
[objPostSyncData release];  
} 

回答

0

在使用该方法的Apple reference documents- (void)performSelectorOnMainThread:(SEL)aSelector withObject:(id)arg waitUntilDone:(BOOL)wait状态

该方法从 同一线程引起相应 选择器进行排队和在相同的相同的顺序来执行 多个呼叫其中拨打了 电话。

+0

实际上,在我的应用程序中,两个线程在睡眠时间后被调用,但一个没有调用,可能是什么原因? – NIKHIL 2011-05-25 06:43:27

+1

如果两个方法同时使用主线程,我认为其中一个被添加到队列 – visakh7 2011-05-25 06:58:47

+0

实际上它正在工作,因为我已经减少了没有得到invocked的胎面的睡眠时间,但是我找不到真正的原因背后的线程没有被调用谢谢你回答 – NIKHIL 2011-05-25 07:02:08