양식을 지속적으로 업데이트하는 비동기 소켓에서 일부 정보가 수신되었다고 가정합니다 (일부 백그라운드 스레드가 종료 됨). 양식을 닫을 때 가끔 throw되는 ObjectDisposedException을 피할 수 있도록 양식 콘텐츠를 안전하게 업데이트 할 수 있습니까?백그라운드 스레드에서 양식을 계속 업데이트합니다.
백그라운드 스레드에서 수행되는 업데이트 작업에서 양식의 속성 IsDisposed를 확인하지만 UI 스레드가 검사 직후 및 예외를 초래하는 업데이트 작업 직전에 양식을 폐기하기 때문에 유용하지 않습니다. (폼을 닫을 때) 양식의 "onScreenFormClosed"핸들러에서 폼 객체에 대한 잠금을 사용하려고 시도했으며 업데이트 작업에서 이러한 작업이 동시에 실행되지 않도록하기 위해 UI 스레드를 차단했습니다.
UI 스레드에서 업데이트 작업을 실행하려고 시도했지만 폼에서 Invoke (...)를 호출해도 여전히 ObjectDisposedException이 throw되었습니다.
예외를 잡을 수없는 이유가 있습니까? – steinar
솔루션에 대한이 질문을보십시오. [http://stackoverflow.com/questions/3565551/c-winforms-threading-closed-form-gets-invoked](http://stackoverflow.com/questions/3565551)/c-winforms-threading-closed-form-gets-invoked) – openshac