gpt4 book ai didi

objective-c - 如何将 NSTimeInterval 对象传递给 detachNewThreadSelector withObject 参数?

转载 作者:行者123 更新时间:2023-12-03 16:23:16 25 4
gpt4 key购买 nike

我对 Objective C 语法还很陌生,所以我可能会让这个变得过于复杂,但我似乎无法弄清楚如何将 NSTimeInterval 传递给线程。

我想启动一个休眠 x 秒的线程,从主线程发送参数如下:

[NSThread detachNewThreadSelector:@selector(StartServerSynchThread) toTarget:self withObject:5];

- (void) StartServerSynchThread:(NSTimeInterval *)sleepSecondsInterval {

[NSThread sleepForTimeInterval:sleepSecondsInterval];

}

但是编译器一直给我一个语法错误。我不确定具体应该如何做。任何帮助,将不胜感激。谢谢!

最佳答案

这与 @Georg 的答案几乎完全相同,但使用了正确的类型。 :)

如果将 NSTimeInterval 装箱到 NSNumber(NSValue 的子类)中,则可以将其传入:

[NSThread detachNewThreadSelector:@selector(startServerSynchThread:) 
toTarget:self
withObject:[NSNumber numberWithDouble:myTimeInterval]];

- (void) startServerSynchThread:(NSNumber *)interval {
[NSThread sleepForTimeInterval:[interval doubleValue]];
}

关于objective-c - 如何将 NSTimeInterval 对象传递给 detachNewThreadSelector withObject 参数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3079888/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com