Contents

조회 수 65867 댓글 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
번호 분류 제목 글쓴이 날짜 조회 수
21 System/OS HTTP 프로토콜 (브라우저와 웹서버 간의 통신) hooni 2003.04.23 48253
20 Develop How to Test SMTP AUTH using Telnet hooni 2018.04.05 1345
19 System/OS How to Setup an Email Server on CentOS 7 hooni 2018.04.05 2792
18 System/OS How to Install and Use wget on Mac file hooni 2020.09.03 1291
17 Etc How to completely Uninstall Coda hooni 2017.10.24 2208
16 Etc GSM에서 음성이 실리는 과정 요약.. hooni 2013.04.23 17520
15 Develop GPL, AGPL, MPL,.. 한눈에 보는 오픈소스SW 라이선스 file hooni 2014.10.14 1146
14 Develop git 브런치 배우기 (링크) hooni 2013.07.09 20571
13 Develop GCM 사용하기 3 (JSP로 GCM 푸시 서버 만들기) 4 file hooni 2013.07.06 25316
12 Develop GCM 사용하기 2 (단말에 GCM 구현하기) file hooni 2013.07.06 23248
11 System/OS Enable the Develop Menu in Safari file hooni 2017.02.07 1081
10 System/OS Enable Safari Hidden Debug Menu in Mac OS X file hooni 2017.02.07 1155
Board Pagination Prev 1 ... 89 90 91 92 93 94 95 96 97 98 Next
/ 98