[Thread] 메인폼 종료시 동작중인 쓰레드 강제종료 필요 > C# WinForm

본문 바로가기
사이트 내 전체검색

C# WinForm

[Thread] 메인폼 종료시 동작중인 쓰레드 강제종료 필요

페이지 정보

작성자 sbLAB 댓글 0건 조회 2,163회 작성일 18-07-25 17:59

본문

    ​서브 쓰레드가 동작 중일때, 메인폼을 종료하면 오류가 발생한다.

    메인폼 FormClosing  이벤트에  아래와 같이 해당 쓰레드를 중지 시키고, 쓰레드가 완전 해제 될 동안  대기 시킨다.

    중요한 것은 먼저 해당 쓰레드가 동작중인지 체크 if (m_Thread!=null) 해준다.

    m_Thread.Abort();

    m_Thread.Join();

    쓰레드를 사용할때는 항상 그 쓰레드의 시작점과 끝점을 확인하자!


//폼종료시 쓰레드 종료
        private void mainForm_FormClosing(object sender, FormClosingEventArgs e)
        {
            //인터넷연결여부 체크 Thread
            if (m_Thread!=null) {
                toolStripStatusLabel_internetStatus.Text = "인터넷연결 체크 중지";
                m_Thread.Abort();
                m_Thread.Join();
            }
 
            //실시간 업데이트 체크 Thread
            if (update_Thread!=null)
            {
                toolStripStatusLabel_internetStatus.Text = "실시간업데이트 체크 중지";
                update_Thread.Abort();
                update_Thread.Join();
            }
 
        }
 

댓글목록

등록된 댓글이 없습니다.

회원로그인

접속자집계

오늘
38
어제
57
최대
124
전체
51,103

그누보드5
Copyright © sebom.com All rights reserved.