Systemstapel vergrössern ...
-
Kann man, und wenn dann wie, bei C# den Stack-Speicher, und den Heap-Speicher, vergrössern ? Der Heap benutzt soviel ich weiss, einen virtuellen Speicher. Wie geht es bei VC++ 6.0 unter den MFC ?. Ich brauche dies, für meinen GeoLisp-Interpreter ( Ein Lisp-Dialekt ). Da macht man regen Gebrauch von Rekursion.
-
GeorgC++ schrieb:
Kann man, und wenn dann wie, bei C# den Stack-Speicher, und den Heap-Speicher, vergrössern ?
Es gibt Möglichkeiten den Stack-Speicher eines C# Programmes zu erhöhen. Es ist allerdings in den meisten Fällen eine schlechte Idee, weil es nur das Problem hinauszögert und nicht löst. Die Menge an Heap-Speicher wird durch das Betriebsystem und dem GC vorgeschrieben. Da kannst du nichts dran ändern, aber solange Speicher vorhanden ist, wirst du ihn auch bekommen. Man kann höchstens den Intialspeicher anpassen.
GeorgC++ schrieb:
Der Heap benutzt soviel ich weiss, einen virtuellen Speicher.
Ich frage mich da, ob du weisst, was mit dem virtuellen Speicher gemeint ist?
GeorgC++ schrieb:
Wie geht es bei VC++ 6.0 unter den MFC?
Was hat das mit dem Rest zu tun? Meinst du, wie man den Stack-Speicher für ein C++ Programm unter VC++ 6.0 erhöht? Aber wieso schreibst du dann MFC hin? Die MFC hat da überhaupt keinen Einfluss drauf. Und den VC++ 6.0 solltest du schleunigst wegwerfen, der ist völlig veraltet.
Zudem wäre diese Frage im falschen Forum. Und weil der VC++ 6.0 so alt ist, kann es schwierig sein, Hilfestellungen zu diesem zu bekommen. Erst recht im falschen ForumGeorgC++ schrieb:
Ich brauche dies, für meinen GeoLisp-Interpreter ( Ein Lisp-Dialekt ). Da macht man regen Gebrauch von Rekursion.
Wenn du in Lisp Rekursionen machst, dann muss das nicht heissen, dass der Interpreter auch Rekursionen macht. Der Interpreter kann sowas auch iterativ lösen. Da fragt man sich, ob du einfach mal präventiv den Stack-Speicher erhöhen möchtest?
Ich setze mal den Link hin, obwohl ich ein schlechtes Bauchgefühl habe:
http://msdn.microsoft.com/en-us/library/xd3shwhf.aspx
bzw.
http://msdn.microsoft.com/en-us/library/35yc2tc3.aspxGrüssli
-
Den GeoLisp Interpretierer, habe ich selber geschrieben ( Allerdings unter VC++ 6.0 ). Da wird zunächst ein rekursives Programm, nicht in ein iteratives umgewandlet. Das ist der nächste Schritt ( Eine "starke Optimierung" ua. die Umwandlung in ein iteratives Programm ). Und unter VC++ 6.0 konnte man die Grösse des Stacks einstellen, nur ging es damals nicht recht.
-
Unter virtuellem Speicher versteht man die Möglichkeit, einen Speicherbereich auf die Festplatte auszulagern, das erhöht den Adressraum. Heutzutage hat man
allerdings mehrere GB Ram-Speicher. Zu VC++ 6.0 : ich komme einfach davon nicht los. Was das falsche Forum angeht, lag ich mit meiner ersten Frage zu C# richtig. Als Entschuldigung für meine logischen Fehler, die ich manchmal mache, kann ich die starken Medikamente anführen, die leider nehmen muss, Sorry ...
-
GeorgC++ schrieb:
Unter virtuellem Speicher versteht man die Möglichkeit, einen Speicherbereich auf die Festplatte auszulagern, das erhöht den Adressraum. Heutzutage hat man allerdings mehrere GB Ram-Speicher.
Falsch. Was du hier beschreibst ist Swapping, bzw. auf Deutsch die Auslagerungsdatei. Virtuelle Speicherverwaltung hat man auch heute noch, obwohl man zum Teil Swapping ausschaltet.
GeorgC++ schrieb:
Zu VC++ 6.0 : ich komme einfach davon nicht los.
Wieso? Vorschrift?
GeorgC++ schrieb:
Was das falsche Forum angeht, lag ich mit meiner ersten Frage zu C# richtig.
Man kann Fragen auch aufsplitten
GeorgC++ schrieb:
Als Entschuldigung für meine logischen Fehler, die ich manchmal mache, kann ich die starken Medikamente anführen, die leider nehmen muss, Sorry ...
Eine Entschuldigung muss du dafür nicht anbringen. Schliesslich bestrafst du dich schon selbst, weil man im falschen Forum nicht gleich schnell die richtigen Antworten bekommt.
Mit Editbin kann man übrigens alle Programme editieren auch die von VC++6. Falls das noch nicht klar war.
Grüssli