Contents

조회 수 65899 댓글 0
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄
performSelector:withObject:afterDelay:  

이 메소드는는 Selector에 해당하는 메소드를 일정시간 이후에 호출해줍니다. (Objective-C에서는 '함수 호출'을 '메시지를 보낸다'고 표현하더군요)

SEL sMethod = @selector(TestMethod);

if([self respondsToSelector:sMethod] == YES) 
[self performSelector:sMethod withObject:nil afterDelay:0.1];

respondsToSelector는 Selector가 구현되어 있는 녀셕인가를 체크해서 YES, NO로 리턴해주는 메소드입니다.

performSelector의 1번째 인자는 selector를 넘겨주고, 2번째 인자는 selector의 1번째 인자를 넘겨줍니다. (없는 경우 nil)
그 다음 afterDelay에 실수형으로 초 단위 값을 넘겨줍니다.  

이런식으로 메소드를 호출하는 경우 현재 스레드와 동일한 스레드 내에서 실행이 됩니다.

이렇게 일정시간 이후 실행되는 메소드의 호출을 취소하고 싶은 경우엔 cancelPreviousPerformRequestsWithTarget 메소드를 호출해줍니다.
[NSRunLoop cancelPreviousPerformRequestsWithTarget:self]; 

이렇게 하면 가장 마지막에 던진 메소드가 취소됩니다.
이렇게 하지 않고 특정 메소드를 취소시키려면 Selector를 지정해주면 됩니다. 

[NSRunLoop cancelPreviousPerformRequestsWithTarget:self selector:sMethod object:nil]; 


[출처] http://shkam.tistory.com/


?

List of Articles
번호 분류 제목 글쓴이 날짜 조회 수
1161 Develop GCM 사용하기 3 (JSP로 GCM 푸시 서버 만들기) 4 file hooni 2013.07.06 25415
1160 Develop git 브런치 배우기 (링크) hooni 2013.07.09 20689
1159 Develop GPL, AGPL, MPL,.. 한눈에 보는 오픈소스SW 라이선스 file hooni 2014.10.14 1253
1158 Etc GSM에서 음성이 실리는 과정 요약.. hooni 2013.04.23 17580
1157 Etc How to completely Uninstall Coda hooni 2017.10.24 2461
1156 System/OS How to Install and Use wget on Mac file hooni 2020.09.03 1522
1155 System/OS How to Setup an Email Server on CentOS 7 hooni 2018.04.05 3022
1154 Develop How to Test SMTP AUTH using Telnet hooni 2018.04.05 1582
1153 System/OS HTTP 프로토콜 (브라우저와 웹서버 간의 통신) hooni 2003.04.23 48342
1152 System/OS HTTPS와 SSL 인증서 file hooni 2014.03.11 7628
1151 Etc iOS 에서 쓸만한 오프라인 구글지도 찾기 hooni 2014.01.06 16087
1150 Etc IoT가 만드는 미래와 플랫폼 경쟁력 secret hooni 2014.09.23 0
Board Pagination Prev 1 2 3 4 5 6 7 8 9 10 ... 98 Next
/ 98