사용중인 블록을 종료하여 해제 된 개체에서 메서드를 실행하는 경우 스레드는 어떻게됩니까?
예 :범위가 지정된 개체에서 여전히 실행중인 스레드가있는 using() 블록을 종료하는 C#
using (SomeObject obj = new SomeObject()) { obj.param = 10 ; Thread newThread = new Thread(() => { obj.Work(); }); newThread.Start(); } ...
obj.Work() 새로운 스레드에서 실행되지만 OBJ 블록 종료를 사용할 때 일반적으로 출시 얻을 것 인으로 IDisposable 개체입니다. 사용 블록이 끝난 후 스레드가 계속 실행되면 어떻게됩니까? 스레드가 완료된 후에 만 객체가 삭제됩니까? 아니면 실이 끊어 질까요?
감사합니다.
스레드 외부에서 using 문을 사용하는 대신 스레드 안에 넣습니다. 스레드 newThread = 새로운 스레드 (() => {obj.param = 10 사용 (OBJ = SomeObject의 새로운 SomeObject의()) { ; obj.Work(); }}); newThread.Start(); – Relster