我目前正在为iOS平台编写一个应用程序,它通过TCP与服务器通信。问题是:我想启动一个NSThread
,它会进入一个检查我的
- (BOOL)connected
一旦连接功能恢复成功,每10秒仍然返回true。
如何制作一个运行函数的计时器并每隔10秒检查一次返回值?
提前感谢任何帮助。
答案 0 :(得分:2)
为什么不使用NSTimer
来运行一个每10秒运行一次的计时器来检查连接状态?
NSTimer
引用了here。有许多静态方法可以创建计时器。您可以使用例如:
+ (NSTimer *)timerWithTimeInterval:(NSTimeInterval)seconds target:(id)target selector:(SEL)aSelector userInfo:(id)userInfo repeats:(BOOL)repeats
您可以将其用作
NSTimer * timer = [NSTimer timerWithTimeInterval:10 target:myobject selector:checkConnectionStatus userInfo:nil repeats:YES];
其中myobject
将是Objective-C对象及其方法-checkConnectionStatus
或您喜欢的方法将检查连接的状态。
答案 1 :(得分:1)
您应该从Apple查看Reachability示例代码。我对TCP知之甚少,但你所描述的内容听起来很快会烧掉电池。除非TCP在没有将无线电唤醒的情况下工作。