Sowohl Windows Phone / Xbox als auch Android unterstützen die Speicherbereinigung von Generationen nicht. Dies ist für viele Programmierer frustrierend. Es scheint einen legitimen technischen Grund dafür zu geben, aber ich kann es nicht herausfinden.
Aktuelle Telefone haben mehr Speicher und wahrscheinlich bessere CPUs als die Desktops / Laptops, auf denen .NET 1.1 mit Generations-GC im Jahr 2001 ausgeführt wurde, und ich kann mir keine Gründe vorstellen, warum ARM-Prozessoren bei Generations-GC schlechter wären als x86. Multitasking auf Telefonen und Konsolen ist weniger erforderlich, sodass relativ mehr freier Heap-Speicherplatz zur Verfügung steht.
Also, was gibt es?
Bearbeiten: Einige Punkte zur Verdeutlichung:
- Diese Plattformen verwenden die Garbage Collection ausschließlich für Apps. Meine Frage ist also nicht, warum GC nicht unterstützt wird. meine Frage ist , warum Generationen Garbage Collection nicht.
- Der Grund, warum die Menschen über den Mangel an Generations-GC frustriert sind, ist, dass nicht-generrationale GC äußerst ineffizient ist. (Das bedeutet, dass die Akkulaufzeit nicht der Grund ist.)
- Ich glaube, dass es einen ehrlichen technischen Grund für den Mangel an GC-Unterstützung für Generationen gibt. Dies ist keine rhetorische Frage.