Wie ich verstehe, enthält der Stapelspeicher in Java Primitive und Methodenaufrufe, und der Heapspeicher wird zum Speichern von Objekten verwendet. Angenommen, ich habe eine Klasse class A { int a ; String b; //getters and setters } Wo wird das Primitiv ain der Klasse Aaufbewahrt? Warum gibt es überhaupt Heapspeicher? …
Nachdem ich mit einigen Programmiersprachen gearbeitet habe, habe ich mich immer gefragt, warum der Thread-Stapel eine vordefinierte maximale Größe hat, anstatt sich automatisch nach Bedarf zu erweitern. Im Vergleich dazu sind bestimmte, in den meisten Programmiersprachen häufig vorkommende Strukturen (Listen, Maps usw.) so konzipiert, dass sie nach Bedarf wachsen, während …
Ich habe folgende Hausaufgabenfrage: Implementieren Sie die Stack-Methoden push (x) und pop () in zwei Warteschlangen. Das kommt mir merkwürdig vor, weil: Ein Stack ist eine (LIFO-) Warteschlange Ich verstehe nicht, warum Sie zwei Warteschlangen benötigen würden, um es zu implementieren Ich habe gesucht: GeeksForGeeks Paketüberfluss und fand ein paar …
Warum lässt der Compiler nicht ein Programm wie das folgende ausführen: function a(b) { return b^2 }; function c(b) { return a(b) + 5 }; und konvertiere es in ein Programm wie dieses: function c(b) { return b^2 + 5 }; Dadurch entfällt die Notwendigkeit des Computers, sich die Absenderadresse …
Ich gehe davon aus, dass es eine Geschichte gibt, aber warum wächst der Stapel nach unten? Es scheint mir, dass Pufferüberläufe viel schwerer auszunutzen wären, wenn der Stack nach oben wächst ...
In der MIPS-Assembly gibt es ein Register für den Stapelzeiger und ein anderes Register für den Rahmenzeiger. Was ist der Rahmenzeiger und wozu dient er? Wie unterscheidet es sich vom Stapelzeiger?
Dies hängt tatsächlich etwas mit der Frage zusammen, die ich gestern gestellt habe, warum in den heute verwendeten Anwendungen sowohl ein Stack als auch ein Heap erforderlich sind (und warum wir nicht einfach einen Heap anstelle von beidem verwenden können, um ein einfaches & einzigartiger Standard). In vielen Antworten wurde …
Laut http://dictionary.reference.com drücken Verb (verwendet mit Objekt) mit Gewalt auf oder gegen ein Ding drücken, um es wegzubewegen. (etwas) auf eine bestimmte Art und Weise bewegen, indem man Kraft ausübt; schieben; fahren: etwas beiseite schieben; die Tür aufstoßen . zu bewirken oder zu vollbringen, indem man Hindernisse beiseite stößt: sich …
In letzter Zeit, als ich C oder C ++ geschrieben habe, werde ich alle meine Variablen auf dem Stapel deklarieren, nur weil es eine Option ist, im Gegensatz zu Java. Ich habe jedoch gehört, dass es eine schlechte Idee ist, große Dinge auf dem Stapel zu deklarieren. Warum genau ist …
Hinweis : Wenn Sie ein bestimmtes Betriebssystem in Betracht ziehen müssen, um antworten zu können, ziehen Sie bitte Linux in Betracht. Jedes Mal, wenn ich ein Programm ausführe, wird ihm ein virtueller Speicherbereich mit einem Bereich für den Stapel und einem für den Heap zugewiesen. Frage 1 : Haben der …
Ich versuche zu verstehen, wie Stapelrahmen erstellt werden und welche Variablen (Parameter) in welcher Reihenfolge zum Stapeln verschoben werden. Einige Suchergebnisse haben gezeigt, dass der C / C ++ - Compiler basierend auf Operationen entscheidet, die innerhalb einer Funktion ausgeführt werden. Wenn die Funktion beispielsweise einen übergebenen int-Wert nur um …
Jedes Mal, wenn über eine neue Programmiersprache diskutiert wird, die auf die JVM abzielt, werden unvermeidlich Dinge gesagt wie: "Die JVM unterstützt keine Tail-Call-Optimierung, daher sage ich viele explodierende Stacks voraus." Es gibt Tausende von Variationen zu diesem Thema. Jetzt weiß ich, dass einige Sprachen, wie zum Beispiel Clojure, ein …
Normalerweise habe ich kein Problem damit, zu entscheiden, ob einige Daten global, statisch oder auf dem Stack sein müssen (hier keine dynamische Zuordnung, daher keine Verwendung des Heapspeichers). Ich habe auch ein paar Fragen / Antworten wie diese gelesen, aber meine Frage ist spezifischer, da sie im Vergleich zum Systemspeicher …
Die rote Zone ist ein Bereich fester Größe im Speicher nach dem Stapelzeiger, der nicht "zugeordnet" wurde. Compiler generieren Assemblys, um in einfachen Blattfunktionen auf diesen Bereich zuzugreifen. Aber ich sehe keine wirklichen Vorteile für die rote Zone. Der Zugriff auf Speicher jenseits des Stapelzeigers ist sehr gefährlich und kann …
Was ist Amortized Analysis? Und wie kann es mir helfen , in meinen Programmen Worst-Case-Leistungsgarantien zu erzielen ? Ich habe gelesen, dass die folgenden Techniken dem Programmierer helfen können, Garantien für die Leistung im schlimmsten Fall zu erzielen (dh in meinen eigenen Worten: Gewährleisten, dass die Laufzeit eines Programms die …
We use cookies and other tracking technologies to improve your browsing experience on our website,
to show you personalized content and targeted ads, to analyze our website traffic,
and to understand where our visitors are coming from.
By continuing, you consent to our use of cookies and other tracking technologies and
affirm you're at least 16 years old or have consent from a parent or guardian.