728x90
Invoke & BeginInvoke
Invoke
- Control.Invoke
- 컨트롤의 내부 핸들이 있는 스레드에서 지정된 대리자를 실행하는 방법이다.
- UI 컨트롤 스레드에서 실행되지만 호출 스레드가 실행되기 앞서 기존 스레드 완료를 기다리고 호출된다.
- Delegate.Invoke
- 동일한 스레드에서 사용할 대리자를 동기적으로 실행하는 방법이다.
- 컨트롤의 본인 스레드가 아닌 다른 스레드를 이용하여 해당 컨트롤 객체를 동기식으로 실행하는 방법이다.
BeginInvoke
- Control.BeginInvoke
- 컨트롤의 기본 핸들이 만들어진 스레드에서 대리자를 비동기적으로 실행하는 방법이다.
- Delegate.BeginInvoke
- 컨트롤의 내부 핸들이 만들어진 스레드에서 지정된 인수를 사용하여 지정된 대리자를 비동기적으로 실행하는 방법이다.
- 컨트롤의 본인 스레드가 아닌 다른 스레드를 이용하여 해당 컨트롤 객체를 비동기식으로 실행하는 방법이다.
728x90
'언어 > C#' 카테고리의 다른 글
Interlocked (0) | 2024.07.31 |
---|---|
ArraySegment (0) | 2024.07.31 |
ConcurrentQueue<T> (0) | 2024.07.31 |
Dispose (0) | 2024.07.31 |
Using (0) | 2024.07.31 |