여러 글 올림
Home
  • 분류 전체보기
    • 과제
      • 백준
      • 202X
    • 자격증
      • 정보처리기사
      • SQLD
    • 프로그래밍언어
      • CSSHTML
      • Python
      • C#
      • C++
Home
  • 분류 전체보기
    • 과제
      • 백준
      • 202X
    • 자격증
      • 정보처리기사
      • SQLD
    • 프로그래밍언어
      • CSSHTML
      • Python
      • C#
      • C++
블로그 내 검색

여러 글 올림

  • 프로그래밍언어/C#

    [C# WinForm] 컨트롤이 어떤 스레드에서 실행되고 있는지 확인하는 방법

    2024. 9. 12.

    by. 쏘니빔

    출처 : ChatGPT

     

    Control 클래스의 모든 UI 컨트롤은 InvokeRequired 속성을 가지고 있으며, 이 속성이 true이면 해당 코드가 UI 스레드가 아닌 다른 스레드에서 실행되고 있다는 뜻입니다.

    if (this.InvokeRequired)
    {
        // UI 스레드가 아님
        Console.WriteLine("This is not the UI thread.");
    }
    else
    {
        // UI 스레드에서 실행 중
        Console.WriteLine("This is the UI thread.");
    }

     

    • this.InvokeRequired: 자식 폼이 현재 UI 스레드에서 실행 중인지 여부를 확인합니다. this는 자식 폼을 가리킵니다. 만약 true를 반환하면 UI 스레드 외부에서 실행 중인 것입니다.
    • false가 반환되면 해당 코드가 UI 스레드에서 실행 중임을 의미합니다.

     

    예시:

    if (this.InvokeRequired)
    {
        this.BeginInvoke((MethodInvoker)delegate
        {
            // UI 스레드에서 실행할 코드
            UpdateUI();
        });
    }
    else
    {
        // 이미 UI 스레드에서 실행 중이므로 바로 실행
        UpdateUI();
    }

    '프로그래밍언어 > C#' 카테고리의 다른 글

    [C# WinForm] 화면상 좌표 가져오기  (0) 2024.09.04
    [C#] @의 의미  (0) 2024.05.13
    [C#] 비주얼 스튜디오 다른 프로세스가 파일을 사용 중이기 때문에 프로세스가 액세스 할 수 없습니다  (0) 2023.04.11
    [C#] if문에서 문자열 비교하기  (0) 2023.04.11

    댓글

    관련글

    • [C# WinForm] 화면상 좌표 가져오기 2024.09.04
    • [C#] @의 의미 2024.05.13
    • [C#] 비주얼 스튜디오 다른 프로세스가 파일을 사용 중이기 때문에 프로세스가 액세스 할 수 없습니다 2023.04.11
    • [C#] if문에서 문자열 비교하기 2023.04.11
    맨 위로
전체 글 보기
Tistory 로그인
Tistory 로그아웃
로그아웃 글쓰기 관리

Today

Total

Powered by ⓒ Kakao Corp.

Designed by Nana
블로그 이미지
쏘니빔

티스토리툴바