2013-09-23 4 views
-1

Я использую рекурсивную функцию в IIS. Он использует следующий код:Исключение переполнения стека в IIS

void recursivefunction(int value) 
{ 
Random random=new Random(); 
int randomValue=random.Next(1,1000000); 
if(randomValue!=value) 
recursivefunction(value); 
else 
return randomValue; 
} 

Эта функция бросает «StackOverflowException» при запуске программы в MVC IIS. Я знаю, что это происходит потому, что размер стека вызовов превышает его предел.

Есть ли способ увеличить размер стека вызовов, чтобы моя программа не выдавала это исключение часто?

Это исключение было брошено главным образом при запуске программы в IIS.

+0

Спасибо за ответ, теперь я могу сделать изображение в окнах без лазера без проблем – Anandaraj

ответ

2

Вы просите липкие сессии, которых сегодня нет в Azure. Вы можете реализовать его самостоятельно, используя ARR IIS, но в конечном итоге это не очень хороший подход для масштабируемой, безгосударственной, отказоустойчивой службы. Лучшим подходом было бы разместить изображение в общем репозитории, где все экземпляры могут достигнуть его, например, хранилище blob. Или даже лучше, поместите изображение в хранилище blob и передайте его непосредственно клиенту из хранилища blob, а не через один из экземпляров роли.

+0

Вы должны обязательно использовать хранилище blob не только по этой причине, но и потому, что там дешевле хранить его, чем в таблице SQL или мобильном хранилище. – NRitH

+0

Спасибо, я дам ему попробовать – Anandaraj

+0

Извините, я изменил вопрос, потому что этот сайт не позволяет мне задавать новые вопросы – Anandaraj

Смежные вопросы