내 작업의 작업 대리자 내에서 내 작업 인스턴스 (t
)를 아래 코드 바로 사용할 수 없습니다. 나는 다음과 같은 오류가 발생합니다 :작업 대리자 내부의 작업 인스턴스
Use of unassigned local variable 't'
코드 :이 경우는 왜
Task t = null;
t = Task.Factory.StartNew(() =>
{
MessageBox.Show(t.Id.ToString());
});
누군가가 설명해 주 시겠어요 : 다음 작업을 수행 할 경우 이제 작동
Task t = Task.Factory.StartNew(() =>
{
MessageBox.Show(t.Id.ToString());
});
?
문제의 두 스 니펫은 동일한 경쟁 조건을 갖습니다. 그러나 컴파일러는 모르는 정적 분석에서 오류입니다. –
@HenkHolterman 예, 아직 있습니다. 아이디어는 경쟁 조건을 더욱 분명하게 만드는 것이 었습니다. – dasblinkenlight
위대한 설명, 고마워요. 그렇다면 위임자의 내 작업 인스턴스에 안전하게 액세스 할 수 있습니까? – davenewza