다음의 간단한 코드를 고려한 후 질문을 드리겠습니다.테스트 코드 - 테스트 환경에서 스레딩을 우회하는 방법
public static void Save(XmlDocument saveBundle)
{
ThreadStart threadStart = delegate
{
SaveToDatabase(saveBundle);
};
new Thread(threadStart).Start();
}
비주얼 스튜디오 (2005)에서 스레드를 사용하는 데 문제는 내가 내가이 바라고 있어요으로 들여다하지 않은 스레드를 전환하는 방법이 생각 (쉽게를 통해 걸을 수 없다 더 쉬운 방법).
라이브에서 내 코드는 위의 예보다 복잡하며 시간이 중요하기 때문에 새 스레드를 사용하지만 주체는 동일합니다. 가장 중요한 것은 테스트에서 시간이 중요하지 않습니다!
현재로서는 #if debug
을 사용하는 것과 같은 일을 할 것입니다.하지만 올바른 방법으로 #if를 사용하고 있습니까? 아니면이 문제를 해결할 더 좋은 방법이 있습니까?
public static void Save(XmlDocument saveBundle)
{
#if debug
{
SaveToDatabase(parameters);
}
#else
{
ThreadStart threadStart = delegate
{
SaveToDatabase(parameters);
};
new Thread(threadStart).Start();
}
#endif
}
}
내가 .NET 2.0 난 이후 .NET (20)의 모든 버전에 관심이 붙어있어 있지만
부울은 조건부와 거의 동일하며 추가 오버 헤드를 추가합니다. –
네, 맞습니다. 질문의 저자가 전처리 조건부를 사용하는 것이 불편하다고 느끼기 때문에 방금 그런 옵션을 제안했습니다. –