달력

09

« 2010/09 »

  •  
  •  
  •  
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  •  
  •  
2008/04/27 00:37

델리게이트(1) General .NET2008/04/27 00:37

2006년 10월 27일 작성된 글이며, 네이버 블로그를 폐쇄하고, 가져온 글 입니다.

1. 닷넷 델리게이트

-         응용 프로그램 내에 있는 다른 메소드를 가리키는 객체

1.1 델리게이트가 포함하는 3가지 중요한 정보

-         델리게이트가 호출하는 메소드 이름

-         이 메소드의 인수

-         이 메소드의 반환값

1. 2 닷넷 프레임워크에서는 동기 델리게이트와 비동기 델리게이트를 이용하는 것이 가능.

 

2. C#에서 델리게이트 정의하기

-         delegate 키워드를 사용.

-         내부적으로 System.MulticastDelegate로부터 파생되는 봉인 클래스가 생성됨.

Ex) public delegate void PlayAcidHouse(Person theDJ, int volumn);

sealed class PlayAcidHouse : System.MulticastDelegate

{

         public PlayAcidHouse(object target, unit functionAddress)

         public void Invoke(Person theDJ, int volumn)
         public IAsyncResult BeginInvoke(Person theDJ, int volumn, AsynCallback cb, object state)
         public void EndInvoke(IAsyncResult result)

}

 

-         PalyAcidHouse 클래스에는 자동적으로 3개의 public 메소드가 만들어짐.

-         Invoke() : 델리게이트에게 현재 지시하고 있는 메소드를 호출할 때를 알리기 위해서 호출, C#에서 직접 호출 불가능

-         BeginInvoke(), EndInvoke() 는 비동기 호출하는데 이용

'General .NET' 카테고리의 다른 글

세티의 닷넷강좌를 다시 살리겠습니다.  (0) 2008/07/22
닷넷 전용 어셈블리  (0) 2008/04/27
델리게이트(1)  (0) 2008/04/27
C# 전처리기 지시문  (0) 2008/04/27
기초 C# - 제너릭  (0) 2008/04/27
닷넷의 소켓 클래스  (0) 2008/04/11
Posted by -세티-