Если у меня есть метод, который, как я знаю, мог бы потенциально повторяться бесконечно, но я не могу с уверенностью предсказать, какие условия / параметры вызвали бы его, какой хороший способ в C # сделать это:
try
{
PotentiallyInfiniteRecursiveMethod();
}
catch (StackOverflowException)
{
// Handle gracefully.
}
Очевидно, что в главном потоке вы не можете этого сделать, но мне несколько раз говорили, что это можно сделать с помощью потоков или домена приложений, но я никогда не видел работающего примера. Кто-нибудь знает, как это сделать надежно?