environments

___ tag123memory ___ Verwenden Sie dieses Tag für die Speicherverwaltung oder Probleme beim Programmieren. Bei Fragen zu Speicherhardwareproblemen oder Fehlern in allgemeiner Software rufen Sie https://superuser.com oder https://serverfault.com auf, wenn dies mit Hardware oder Software auf Unternehmensebene zu tun hat. ___ qstnhdr ___ Verschiebt einen Wert in eine andere Umgebung ___ tag123r ___ R ist eine freie, quelloffene Programmiersprache und Softwareumgebung für statistische Berechnungen, Bioinformatik, Visualisierung und allgemeine Datenverarbeitung. Stellen Sie minimale, reproduzierbare, repräsentative Beispiele für Ihre Fragen bereit. Verwenden Sie dput () für Daten und geben Sie alle Nicht-Basis-Pakete mit Bibliotheksaufrufen an. Bilder für Daten oder Code nicht einbetten, eingerückte Codeblöcke verwenden. Verwenden Sie für statistische Fragen http://stats.stackexchange.com. ___ answer14733377 ___

Vielleicht auf Festplatte schreiben, löschen, von Festplatte lesen? Das einzige potentielle Problem, das ich mit diesem Ansatz vorhersehen kann, ist, dass jegliche Beziehungen zwischen Eltern / Kind-Umgebungen verloren gehen. Aber wenn Sie nur versuchen, die Werte von einer Umgebung in eine andere zu kopieren, ist das vielleicht kein Problem?

Aktualisierung:

Ich kann nicht replizieren, was Sie über den Kopieransatz sagen. Der folgende Code zeigt, dass der maximal verwendete Speicher (wie von %code% gemeldet) nicht erhöht wird. Dies liegt daran, dass die Werte "versprochen" und nicht tief kopiert werden. Eine Kopie wird jedoch erstellt, wenn Sie ein Objekt in der neuen Umgebung ändern, bevor Sie es aus der alten Umgebung löschen.

%Vor%     
___ tag123umgebungen ___ Eine Umgebung besteht aus dem Server, dem Betriebssystem, den Einstellungen und der Software, in der ein Programm ausgeführt wird. Es kann sich auch auf eine Software-Entwicklungsumgebung beziehen, in der Software erstellt wird. ___ qstntxt ___

Angenommen, ich habe einen Wert, der im Speicher groß ist (vielleicht eine riesige Matrix). Gibt es eine Möglichkeit, diesen Wert in eine andere Umgebung zu verschieben statt zu kopieren und dann zu löschen? Der Kopier- / Klon-Ansatz erhöht den Speicherbedarf vorübergehend um die Größe des Werts.

Ich habe diesen Beitrag überprüft, enthält aber nicht die Lösung für mein Problem. Das Teilen derselben Umgebung (um die Kopie zu vermeiden) ist keine Option . Ich muss den Wert wirklich verschieben.

    
___
1
Antwort

Verschiebt einen Wert in eine andere Umgebung

Angenommen, ich habe einen Wert, der im Speicher groß ist (vielleicht eine riesige Matrix). Gibt es eine Möglichkeit, diesen Wert in eine andere Umgebung zu verschieben statt zu kopieren und dann zu löschen? Der Kopier- / Klon-Ansatz erhöht den...
06.02.2013, 15:54