Artikel-ID: 000059846 Inhaltstyp: Produktinformationen und Dokumente Letzte Überprüfung: 10.08.2021

Wie sollte Objektspeicher in einer Intel® Software Guard Extensions (Intel® SGX) Enklave befreit werden?

BUILT IN - ARTICLE INTRO SECOND COMPONENT
Zusammenfassung

Verwenden Sie den C++ Operator "delete", um den Objektspeicher in einer Enklave frei zu setzen.

Beschreibung
  • Enklave umfasst C++ Objekte wie Klassen unique_ptrs.
  • Es kann nicht bestimmt werden, wie der Speicher für C++ Objekte in der Enklave befreit wird.
Lösung

Verwenden Sie in Enklaven den C++ Löschoperator, um Speicher frei zu lassen, der zuvor Klassen, unique_ptrs und anderen Objekten mit dem neuen Operator zugewiesen war. Die neuen Operatoren und Löschungen verhalten sich innerhalb von Enklaven genauso wie in regulären C++ Anwendungen.

Beispielcode:

test.h:

class{

private:

  ClassA* ca;

  unique_ptr cb;

}

test.cpp:

//Use new to instantiate the class and unique_ptr objects

ca = new ClassA*(...); 

cb = make_unique(function(...));

//Use delete to free the memory previously allocated with new

delete ClassA;

delete cb;

 

Weitere Informationen

Weitere Informationen dazu finden Sie im C++ Sprachsupport-Abschnitt im Intel® Software Guard Extensions (Intel® SGX) SDK Developer Reference Guide für Ihr Betriebssystem.

Zugehörige Produkte

Dieser Artikel bezieht sich auf 1 Produkte

Der Inhalt dieser Seite ist eine Kombination aus menschlicher und computerbasierter Übersetzung des originalen, englischsprachigen Inhalts. Dieser Inhalt wird zum besseren Verständnis und nur zur allgemeinen Information bereitgestellt und sollte nicht als vollständig oder fehlerfrei betrachtet werden. Sollte eine Diskrepanz zwischen der englischsprachigen Version dieser Seite und der Übersetzung auftreten, gilt die englische Version. Englische Version dieser Seite anzeigen.