<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0"><channel><title><![CDATA[Fragen zum Ablauf eines erstellten Objectes ...]]></title><description><![CDATA[<p>Hi,</p>
<p>hab die Frage zwar schon in etwa so gestellt, aber leider konnte mir<br />
noch keiner eine genau Angabe machen.</p>
<p>Ich erstelle mit CreateDevice ein Object, das ich jederzeit mit seinen<br />
Unterfunktionen verwenden kann. Wenn jetzt das Programm geschlossen wird<br />
geht man normalerweise nicht her und deleted das Objekt per Hand.<br />
Fast jedes Object das ich kenne hat aber 3 Interfacefunktionen,<br />
QueryInterface, Release und AddRef.</p>
<p>Jetzt meine Frage:<br />
Wird beim Schließen eines Fensters nun eine Art Standartroutine aufgerufen,<br />
die sich vorher alle erstellten Objecte gemerkt hat und diese nun einzeln per<br />
Release Aufruf korrekt entfernt, oder geschiet dies anderst ?</p>
<p>Bei der Funktion Release steht übrigens meistens in der MSN:</p>
<p>Decreases the reference count of the interface by 1.<br />
Returns the new reference count. This value is for diagnostic and testing purposes only.</p>
<p>Da wäre doch die Frage nahe, wie das mit der Referenz geht ?<br />
Eine ReferenzID ist doch fest und wird eigentlich nicht verkleinert ?</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/85952/fragen-zum-ablauf-eines-erstellten-objectes</link><generator>RSS for Node</generator><lastBuildDate>Sat, 18 Apr 2026 06:11:46 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/85952.rss" rel="self" type="application/rss+xml"/><pubDate>Tue, 14 Sep 2004 12:55:42 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Fragen zum Ablauf eines erstellten Objectes ... on Tue, 14 Sep 2004 12:55:42 GMT]]></title><description><![CDATA[<p>Hi,</p>
<p>hab die Frage zwar schon in etwa so gestellt, aber leider konnte mir<br />
noch keiner eine genau Angabe machen.</p>
<p>Ich erstelle mit CreateDevice ein Object, das ich jederzeit mit seinen<br />
Unterfunktionen verwenden kann. Wenn jetzt das Programm geschlossen wird<br />
geht man normalerweise nicht her und deleted das Objekt per Hand.<br />
Fast jedes Object das ich kenne hat aber 3 Interfacefunktionen,<br />
QueryInterface, Release und AddRef.</p>
<p>Jetzt meine Frage:<br />
Wird beim Schließen eines Fensters nun eine Art Standartroutine aufgerufen,<br />
die sich vorher alle erstellten Objecte gemerkt hat und diese nun einzeln per<br />
Release Aufruf korrekt entfernt, oder geschiet dies anderst ?</p>
<p>Bei der Funktion Release steht übrigens meistens in der MSN:</p>
<p>Decreases the reference count of the interface by 1.<br />
Returns the new reference count. This value is for diagnostic and testing purposes only.</p>
<p>Da wäre doch die Frage nahe, wie das mit der Referenz geht ?<br />
Eine ReferenzID ist doch fest und wird eigentlich nicht verkleinert ?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/606918</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/606918</guid><dc:creator><![CDATA[thenoname]]></dc:creator><pubDate>Tue, 14 Sep 2004 12:55:42 GMT</pubDate></item><item><title><![CDATA[Reply to Fragen zum Ablauf eines erstellten Objectes ... on Tue, 14 Sep 2004 13:53:13 GMT]]></title><description><![CDATA[<p>Afaik wird da nichts automatisch aufgerufen. Und der Wert ist nicht die Referenz-ID, sondern eine Referenz-Zähler, der zählt, wie viele Referenzen erstellt wurden <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f609.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--winking_face"
      title=";)"
      alt="😉"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/606985</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/606985</guid><dc:creator><![CDATA[flenders]]></dc:creator><pubDate>Tue, 14 Sep 2004 13:53:13 GMT</pubDate></item><item><title><![CDATA[Reply to Fragen zum Ablauf eines erstellten Objectes ... on Tue, 14 Sep 2004 14:10:57 GMT]]></title><description><![CDATA[<p>Heisst das nun, das der Speicherplatz ohne ein vorheriges aufrufen<br />
der Release Funktion noch offen bleibt, also quasi ein Speicherloch<br />
entsteht ? Wie macht ihr das ? mach ihr nun ein Release ?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/607007</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/607007</guid><dc:creator><![CDATA[thenoname]]></dc:creator><pubDate>Tue, 14 Sep 2004 14:10:57 GMT</pubDate></item><item><title><![CDATA[Reply to Fragen zum Ablauf eines erstellten Objectes ... on Tue, 14 Sep 2004 15:37:32 GMT]]></title><description><![CDATA[<p>Also der Speicher innerhalb deines Prozess sollte schon freigegeben werden - nur wenn eben beim Release mehr geschieht, als nur den Speicher freizugeben, dann solltest du die Funktion schon aufrufen - denke ich mal <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f921.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--clown_face"
      title=":clown:"
      alt="🤡"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/607106</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/607106</guid><dc:creator><![CDATA[flenders]]></dc:creator><pubDate>Tue, 14 Sep 2004 15:37:32 GMT</pubDate></item><item><title><![CDATA[Reply to Fragen zum Ablauf eines erstellten Objectes ... on Tue, 14 Sep 2004 17:17:23 GMT]]></title><description><![CDATA[<p>ich schreib das ja auch nur, weil ich in d3d Technik immer sehe, das ein<br />
Objekt erzeugt wird und immer dannach 100% released werden muss.<br />
Wenn ich nun in Direct Draw einige Objekte erzeuge und diese Pointer auf die<br />
Objekte im DirectDrawCode nicht mehr gelöscht werden, müsste das nach einiger Zeit<br />
recht langsam werden.<br />
Aber ich dachte, das das hier bekannt wäre. Nachdem dies nicht so ist, scheint<br />
es wohl auch nicht so zu sein.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/607187</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/607187</guid><dc:creator><![CDATA[thenoname]]></dc:creator><pubDate>Tue, 14 Sep 2004 17:17:23 GMT</pubDate></item><item><title><![CDATA[Reply to Fragen zum Ablauf eines erstellten Objectes ... on Tue, 14 Sep 2004 17:46:18 GMT]]></title><description><![CDATA[<p>thenoname schrieb:</p>
<blockquote>
<p>Wenn ich nun in Direct Draw einige Objekte erzeuge und diese Pointer auf die Objekte im DirectDrawCode nicht mehr gelöscht werden, müsste das nach einiger Zeit recht langsam werden.</p>
</blockquote>
<p>Ich hatte mich nur darauf bezogen, dass Speicher beim Beenden des Prozesses wieder freigegeben werden sollte - zur Laufzeit sieht das natürlich anders aus (da wird dann sicher nur das freigegeben, was du explizit freigibst)</p>
<p>thenoname schrieb:</p>
<blockquote>
<p>Aber ich dachte, das das hier bekannt wäre. Nachdem dies nicht so ist, scheint es wohl auch nicht so zu sein.</p>
</blockquote>
<p>Bisher hast du ja nur meine sehr ungewissen Informationen (auf die du dich nicht verlassen solltest, da ich fast keine praktische WinAPI-Programier-Erfahrung habe)</p>
]]></description><link>https://www.c-plusplus.net/forum/post/607217</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/607217</guid><dc:creator><![CDATA[flenders]]></dc:creator><pubDate>Tue, 14 Sep 2004 17:46:18 GMT</pubDate></item></channel></rss>