Alternatif bir örnek büyük bir text dosyayı stream olarak okumak yerine tek seferde belleğe alınmaya çalışılması...
Hatayı dışardan bir sınıf kullandığınızda alıyorsanız ve başkaları bu hatayı almıyorsa oluşacak hatalardan biri StackSize ile ilgili olabilir. Yani dışardan çağırdığınız sınıfın bellek kullanımı ile ilgili.
Son tecrübemde Java üzerinde geliştirilmiş bir sınıfın IKvm ile .Net'e port edilmiş halini Console uygulamasında hatasız çalışırken Visual Studio'da Asp.net projesi olarak çalıştırmayı denediğimde hata oluşuyordu. (StackTrace kaybolduğundan hata StackOverflow olarak orataya çıkmıyordu.)
Hatayı araştırdığımda iki alternatif öneri vardı:
1. İlgili sınıfı yeni bir thread açıp MaxStackSize belirtip orda çalıştırmak.
2. Visual Studio ile gelen IIS Express'i kullanmak yerine Servis olarak kurulan IIS'i kullanmak.
İlgili sınıfı yeni bir thread için de aşağıdaki şekilde çalıştırabiliriz;
Thread thread = new Thread(MyMethod, 1048576);
t.Start();
void MyMethod()
{
//Çağrılan sınıf / method
}