Die JVM-Spezifikation (JSE 8 Ausgabe) erwähnt:Ist der Frame im JVM-Heap zugeordnet oder der Stack zugeordnet?
Seite 12: 2.5.2 JVM Stacks: "Da der JVM-Stack wird nie direkt manipuliert, außer zu drücken und Pop-Frames kann Rahmen seines Heap zugewiesen"
Seite 15: 2.6: Frames: "Frames werden vom JVM-Stack des Threads zugewiesen, der den Frame erzeugt." Und auf Seite 16: "Beachten Sie, dass ein von einem Thread erstellter Rahmen lokal für diesen Thread ist und von keinem anderen Thread referenziert werden kann."
Das klingt ziemlich verwirrend für mich. Da ein Frame lokal für den Thread ist, der den Frame erstellt, sollten Sie den Frame im Heap zuordnen, da Heap von allen JVM-Threads gemeinsam genutzt wird. Es macht keinen Sinn, wenn hier etwas übersehen wird. Der Satz auf Seite 12 ist eine interessante Aussage.
Irgendwelche Hinweise? Vielen Dank.
"möglicherweise Heap zugeordnet", meine Vermutung ist, möglicherweise ist da, weil es Implementierung abhängig ist und keine inhärenten Einschränkungen von JVM-Spezifikation. Der JVM-Implementierer hat die Freiheit, den Stack beliebig zu implementieren. – kosa