Microsoft MVP성태의 닷넷 이야기
event와 delegate의 차이 , event를 써야하는 이유 [링크 복사], [링크+제목 복사],
조회: 11822
글쓴 사람
김지우
홈페이지
첨부 파일
 

event는 내부적으로 delegate를 사용하여 구현이 되었는데, delegate대신 event를 굳이 사용해야하는 이유가 뭔가요?
event 는 내부적으로 add, remove 할 때 CAS를 사용하여 thread-safe하게 구현되어있는데, delegate는 그렇지 않던데 그 이유뿐인가요?
사실상 event는 event라는 키워드를 한번 더 써야해서 더 귀찮을 수 도있는데 event를 사용해서 성능상으로 이득을 보는 경우가 어떤게 있나요?








[최초 등록일: ]
[최종 수정일: 2/21/2023]


비밀번호

댓글 작성자
 



2023-02-21 07시12분
이벤트를 사용해서 성능상 이득이 나오는 경우는 없습니다. 단지, 이벤트라는 것이 delegate의 한 사례를 쉽게 풀어주기 때문에 구현상 편리하다는 장점이 있는 것입니다.

제 책에서 4.5.2.3 이벤트로 정리를 했는데, 거기 있는 차이밖에는 없습니다. 따라서, 원하신다면 그냥 event는 신경쓰지 않고 delegate로만 구현하셔도 무방합니다.
정성태

... 91  [92]  93  94  95  96  97 
NoWriterDateCnt.TitleFile(s)
176최성우5/3/200512314                답변글 [답변]: [답변]: [답변]: [답변]: [질문(--),(__)]BHO로 자동 로그인 기능 구현.. 패스워드를 읽어오지를 못합니다.
146안연준4/14/200513176컴포넌트 안에 컴포넌트 삽입? 헐 ! -_-;;
147정성태4/14/200511934    답변글 [답변]: 컴포넌트 안에 컴포넌트 삽입? 헐 ! -_-;;
148안연준4/15/200512444        답변글 [답변]: [답변]: 컴포넌트 안에 컴포넌트 삽입? 헐 ! -_-;; [2]
142김용국4/13/200512289SmartClient 방식에서 이미지(바이너리)파일을 DataBased에 저장하기위한 방안에 대한 문의
143정성태4/14/200512052    답변글 [답변]: SmartClient 방식에서 이미지(바이너리)파일을 DataBased에 저장하기위한 방안에 대한 문의
141김종욱4/12/200512279웹하드 시스템을 ACTIVEX 로 짜고 있습니다
144정성태4/14/200511834    답변글 [답변]: 웹하드 시스템을 ACTIVEX 로 짜고 있습니다
149김종욱4/15/200511809        답변글 [답변]: [답변]: 웹하드 시스템을 ACTIVEX 로 짜고 있습니다 [1]
150정성태4/15/200511866            답변글 [답변]: [답변]: [답변]: 웹하드 시스템을 ACTIVEX 로 짜고 있습니다 [1]
151김종욱4/16/200512264                답변글 [답변]: [답변]: [답변]: [답변]: 웹하드 시스템을 ACTIVEX 로 짜고 있습니다
152정성태4/16/200512009                    답변글 [답변]: [답변]: [답변]: [답변]: [답변]: 웹하드 시스템을 ACTIVEX 로 짜고 있습니다
153김종욱4/18/200513756                        답변글 [답변]: [답변]: [답변]: [답변]: [답변]: [답변]: 웹하드 시스템을 ACTIVEX 로 짜고 있습니다
154정성태4/18/200512935                            답변글 [답변]: [답변]: [답변]: [답변]: [답변]: [답변]: [답변]: 웹하드 시스템을 ACTIVEX 로 짜고 있습니다 [3]
140안연준4/11/200511689Smart Client 에서 오프라인 글 중...의문점
145정성태4/14/200511481    답변글 [답변]: Smart Client 에서 오프라인 글 중...의문점 [1]
134김용국4/6/200516141c# .Net 에 대한 문의좀 ^^ [WinForm 에서 UserControl로 작성된 폼을 호출하려는데....]
135정성태4/6/200514259    답변글 [답변]: c# .Net 에 대한 문의좀 ^^ [WinForm 에서 UserControl로 작성된 폼을 호출하려는데....]
136김용국4/6/200513001        답변글 [답변]: [답변]: c# .Net 에 대한 문의좀 ^^ [WinForm 에서 UserControl로 작성된 폼을 호출하려는데....]
137정성태4/7/200512140            답변글 [답변]: [답변]: [답변]: c# .Net 에 대한 문의좀 ^^ [WinForm 에서 UserControl로 작성된 폼을 호출하려는데....]
138김용국4/7/200511098                답변글 [답변]: [답변]: [답변]: [답변]: c# .Net 에 대한 문의좀 ^^ [WinForm 에서 UserControl로 작성된 폼을 호출하려는데....]
139김용국4/11/200511713                    답변글 잘 해결 되었습니다... 감사합니다 [한줄답변]
129김용국3/31/200513015SmartClient 배포와 관련해서 무엇이 빠졌는지 좀 알려주시면 감사하겠습니다....!파일 다운로드2
130정성태3/31/200511776    답변글 [답변]: SmartClient 배포와 관련해서 무엇이 빠졌는지 좀 알려주시면 감사하겠습니다....!
131김용국4/1/200511265        답변글 [답변]: [답변]: SmartClient 배포와 관련해서 무엇이 빠졌는지 좀 알려주시면 감사하겠습니다....!
132정성태4/1/200511403            답변글 [답변]: [답변]: [답변]: SmartClient 배포와 관련해서 무엇이 빠졌는지 좀 알려주시면 감사하겠습니다....!
... 91  [92]  93  94  95  96  97