Forum: .Net Allgemein |
Thema:
C#/VB - DLL im C++ Projekt verwenden – Speicherproblem |
Von:
G. Guest (
21.06.2005 10:49) |
Aloha Leute :)
ich würde gerne eine Klasse, welche in C# entwickelt wurde, in einem C++ Projekt benutzen. Wie das untere Code Beispiel zeigt, habe ich dies schon geschafft :) – nur wie lösche ich das (C#) - Objekte vollständig? Dachte bisher, der Garbage Collector kümmert sich darum ...
über Tipps würde ich mich natürlich freuen ...
Gruß Ralf
" ...
#using <mscorlib.dll>
#include < vcclr.h >
#using <TestApi.dll> // C# DLL
gcroot<TestApi::Client*> myClient; // mein TestObjekt aus der TestApi.dll
void test()
{
myClient = new TestApi::Client(); // myClient wird ohne Probleme erzeugt
myClient->ClientTestFct(); // Aufruf OK
for(int i=0; i<1000;i++){
myClient = new TestApi::Client(); // führt zum Speicheranstieg
}
// wie kann ich myClient vollständig aus dem Speicher löschen?
// Anwendung verlangt es myClient mehrmals zu löschen/ zu erzeugen
}
... "
Betreff |
Von |
Datum |
|
|
Re: C#/VB - DLL im C++ Projekt verwenden –...
So geht das natürlich net ;-)<br>In C++ gibts keinen GC, und du erzeugst ständig neue Objecte die dann herumhängen.<br><br>Müsste eigentlich ganz normal mit delete() möglich sein?<br><br>lg Clemens |
|
|
|
|
|
t422
45z425
|
01.09.2005 12:52 |
|
|
Antworten
Vorsicht bei der Eingabe: Die Zeichen ' oder -- sind nicht erlaubt!