다음과 같은 코드가 있습니다. 교착 상태가 발생합니까?교착 상태 만들기
private readonly object objectLock = new object();
public void MethodA()
{
lock(objectLock)
{
MethodB();
}
}
public void MethodB()
{
lock(objectLock)
{
//do something
}
}
UPDATE : 아니, 당신은 교착 수 있도록 두 개의 잠금 객체를 필요할 것
MethodA가 MethodB를 두 번 호출하면 어떻게 될까요? 그래도 괜찮을까요? – Jon
그래, 여전히 괜찮을거야. 시도해 보았 니? 교착 상태가 발생하면 모든 스레드가 교착 상태에 빠지게됩니다. 단일 스레드로 교착 상태가 발생할 수 없습니다. 앱에 여러 개의 스레드가 있습니까? –
죄송합니다. 내 질문이 업데이트되었습니다. 두 스레드가 있습니다. – Jon