웹 서버의 데이터가 필요한 앱이 있습니다. 로컬 요청에 대한 빠른 응답을 보장하기 위해 여러 국가에 서버가 있습니다. 앱을 시작할 때 어떤 서버를 사용해야할지 결정하고 싶습니다. 따라서 다른 서버에 요청을 보내고 어떤 응답을 먼저 확인해야합니다.iOS 멀티 스레딩 응답
나는 각 서버에 check.php
을 가지고 있으며 응답으로 "ok"를 반환하고 다른 스레드에서 호출 할 수 있지만 처음 응답하는 서버에 serverURL
을 설정하는 방법을 알지 못합니다. 누구든지 도와 줄 수 있습니까? 아니면 내가 원하는 것을 성취 할 수있는 더 좋은 방법이 있습니까?
NSURL *url = [NSURL URLWithString:@"http://server_de/check.php"];
NSError *e = nil;
NSString* result = [NSString stringWithContentsOfURL:url encoding:NSUTF8StringEncoding error:&e];
if (result == nil || ![result isEqualToString:@"ok"]) {
serverURL=ServerDE;
}
EDIT : 모든 서버가 응답하지만 전 세계의 서버는 응답 속도가 느립니다. 가장 느린 서버가 아닌 가장 빠른 서버를 설정해야합니다.
url vars와 연결된 각 서버에 대한 플래그 변수를 만듭니다. – DeyaEldeen
GLC를 사용하여 메인 스레드에'url'을 보내고 nil이 아니라면'serverURL'을 설정하십시오. – KudoCC
@KudoCC, 좀 더 자세히 설명해 주시겠습니까? – boreas