當我創建一個NSThread時,我將它傳遞給一個我希望進程知道的數字。我可以理解如何設置數字,但我不知道如何從線程選擇器方法讀取數字,以便我可以將它傳遞給定時器。獲取傳遞給NSThread選擇器的對象
你怎麼做到的?
-(void) setthread
{
//經過數選擇這裏細
NSThread* timerThread = [[NSThread alloc] initWithTarget:self selector:@selector(startTimerThread) object:[NSNumber numberWithInt:index]];/
[timerThread setThreadPriority:0.5];
[timerThread start]; //start the thread
}
//不明白如何閱讀傳遞給這個選擇的價值
-(void) startTimerThread
{
NSAutoreleasePool* pool = [[NSAutoreleasePool alloc] init];
NSRunLoop* runLoop = [NSRunLoop currentRunLoop];
[[NSTimer scheduledTimerWithTimeInterval: 0.1
target: self
selector: @selector(timerTick:)
userInfo: thenumberhere
repeats: YES] retain];
[runLoop run];
[pool release];
}
- (void)timerTick:(NSTimer *)timer
{
//code
}
這個答案只是幫助我解決了類似的問題。 +1;) – craig1231 2013-05-31 18:43:04