Go-`defer` und Rust-`Drop`
(dev.to)- Um Ressourcen automatisch freizugeben, kann man in Go
deferverwenden
→ Allerdings wird es kompliziert, wenn Ressourcen innerhalb einer Schleife zugewiesen werden, auch wenn es dafür Lösungen gibt
→ Es bleibt immer Raum für Fehler
- In Rust kann man Ressourcen automatisch freigeben, indem man für sie das
Drop-Trait implementiert
→ Selbst in Fällen wie Schleifen gibt es nicht dieselben Probleme wie bei defer, und es ist kein Aufruf zur Ressourcenfreigabe über defer nötig
1 Kommentare
Es gibt zwar auch in Go einen Vorschlag zu try-resource, aber es scheint nicht so, als würde man ihm besondere Aufmerksamkeit schenken:
https://github.com/golang/go/issues/29120
Wenn man so etwas sieht, wirkt es auch so, als gehöre es zur Philosophie von Go, die Freigabe von Ressourcen nicht unter einem anderen Modul zu verstecken.
https://stackoverflow.com/questions/59044658/…