Entwickler-Ecke
Sonstiges (.NET) - Stapelgrösse erhöhen
georgeboy - Fr 15.01.21 10:52
Titel: Stapelgrösse erhöhen
Hallo zusammen, gibt es eine Möglichkeit, die maximale Stapelgrösse vom Haupt-Thread zu erhöhen ? Ich arbeite mit VS 2008 und VS 2019 C# .NET WinForms.
Moderiert von Th69: Topic aus WinForms verschoben am Fr 15.01.2021 um 14:06
georgeboy - Fr 15.01.21 15:14
Da stelle ich die Funktion lieber in einen Thread:
Thread(new ThreadStart("ThreadMethode"), StackSize);
Stack<T> geht natürlich auch. Danke!
Moderiert von Th69: C#-Tags hinzugefügt
Ralf Jansen - Fr 15.01.21 18:04
Mit editbin hättest du auch die Stacksize aller Threads beinflusst. Das eskaliert schnell.
Der Stack ist ja nicht begrenzt um uns Entwickler zu ärgern. Das hat Gründe.
Ein Überlegen ob es auch anders geht, ohne Rekursion bzw. ohne tiefe Rekursion, ist empfehlenswert.
georgeboy - Sa 16.01.21 08:03
Meine Funktion ruft sich mehrfach selber auf:
C#-Quelltext
1: 2: 3: 4: 5: 6: 7: 8:
| funktion( ... )
for ( ... ) { ... funktion( ... ) ... } |
Danke !!!
Moderiert von Th69: C#-Tags hinzugefügt
jaenicke - Sa 16.01.21 09:16
georgeboy hat folgendes geschrieben : |
Meine Funktion ruft sich mehrfach selber auf: |
Dass es um rekursive Aufrufe geht, war klar. Aber die Anzahl dieser rekursiven Aufrufe kann man oft mit einem veränderten Algorithmus verringern.
georgeboy - Sa 16.01.21 14:19
Mit Memoisation ? Wenn nicht, dann würde mich das interessieren.
jaenicke - Sa 16.01.21 17:15
Das kommt auf den Algorithmus an. Oft kann man den Algorithmus recht einfach modifizieren.
Die Fibonacci-Folge ist ein gutes Beispiel. Da ist der nicht-rekursive Algorithmus genauso einfach wie der rekursive.
Memoisierung ist ein weit gefasster Begriff. Natürlich muss man auch ggf. Variablen zur Zwischenspeicherung verwenden. Das ist aber nicht das, was man mit Memoisierung meint. Da geht es darum, dass man mehrere gleiche Aufrufe vermeidet, indem man die Ergebnisse zwischenspeichert. Das hat mit der Umwandlung einer rekursiven Funktion in eine nicht-rekursive wenig zu tun.
georgeboy - So 17.01.21 08:26
Danke Dir !!!
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2024 by Christian Stelzmann Alle Rechte vorbehalten.
Alle Beiträge stammen von dritten Personen und dürfen geltendes Recht nicht verletzen.
Entwickler-Ecke und die zugehörigen Webseiten distanzieren sich ausdrücklich von Fremdinhalten jeglicher Art!