Warum ist die Speicherzuweisung auf dem heap VIEL langsamer als auf den stack?

Mir wurde gesagt, dies viele Male. Aber ich weiß nicht WARUM...Was extra Kosten beteiligt ist, bei der Zuteilung von Speicher aus dem heap? Ist es hardware bedingt? Ist das mit dem CPU-Zyklen? So viele Vermutungen, aber keine genauen Antworten...Könnte jemand geben Sie mir einige der Ausarbeitung?

Nur als "entspannen Sie sich", sagte der Heap-Datenstruktur ist komplizierter als der Stack. Und meiner Meinung nach, einige Speicher zugeordnet ist, um einen thread als seinen Stack, wenn es zu laufen beginnt, während der heap teilen sich alle threads innerhalb eines Prozesses. Dieses Paradigma erfordern einige zusätzlichen Mechanismus zur Verwaltung der einzelnen thread ' s, Nutzung der shared-heap, wie z.B. Garbage Collection. Bin ich richtig auf dieser?

InformationsquelleAutor smwikipedia | 2010-02-15
Schreibe einen Kommentar