2013-12-08 3 views
0

현재 TCP를 통해 서버와 통신하는 iOS 플랫폼 용 앱을 작성 중입니다. 문제는 : 나는 연결 기능이 성공적으로 반환되면 내iOS에서 n 초마다 연결 확인 수행

- (BOOL)connected 

여전히 사실 10 초마다 반환 확인하는 무한 루프로 실행되는 NSThread을 시작합니다.

함수를 실행하고 10 초마다 반환 값을 확인하는 타이머를 만들려면 어떻게해야합니까?

도움을 주시면 감사하겠습니다.

답변

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 당신이 연결 상태를 확인합니다 같은 목표 - C 객체와 그 방법 -checkConnectionStatus 또는 방법이 될 곳 .

+1

좋은 대답 @doptimusprime 하지만 코드가 실행되도록 코드 줄 [[NSRunLoop currentRunLoop] addTimer : timer forMode : NSRunLoopCommonModes]; –

+0

@AhdRadwan : 답변을 수정하십시오. – doptimusprime

1

Apple의 Reachability 샘플 코드를 체크 아웃해야합니다. TCP에 대해 많이 알지는 못하지만 배터리로 빨리 타는 것처럼 들리 네요. TCP가 작동하지 않으면 라디오가 깨어나지 않습니다.

+0

입력 해 주셔서 감사합니다. –