<?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[InterlockedExchange für bool]]></title><description><![CDATA[<p>Hallo,</p>
<p>ich verwende derzeit InterlockedExchange um globale bool Variablen (multi)threadsafe zu schreiben. Diese sind in einer Struktur und als volatile deklariert. Jetzt habe ich aber bemerkt, dass mir InterlockedExchange mehr als nur eine bool Variable schreibt und die Nachfolgende überschreibt.<br />
Wie könnte ich jetzt eine Full-Memory-Barrier für meine bool Variablen verwirklichen (außer CriticalSections)?</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/191947/interlockedexchange-für-bool</link><generator>RSS for Node</generator><lastBuildDate>Wed, 01 Jul 2026 08:19:38 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/191947.rss" rel="self" type="application/rss+xml"/><pubDate>Sat, 08 Sep 2007 16:16:13 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to InterlockedExchange für bool on Sat, 08 Sep 2007 16:16:13 GMT]]></title><description><![CDATA[<p>Hallo,</p>
<p>ich verwende derzeit InterlockedExchange um globale bool Variablen (multi)threadsafe zu schreiben. Diese sind in einer Struktur und als volatile deklariert. Jetzt habe ich aber bemerkt, dass mir InterlockedExchange mehr als nur eine bool Variable schreibt und die Nachfolgende überschreibt.<br />
Wie könnte ich jetzt eine Full-Memory-Barrier für meine bool Variablen verwirklichen (außer CriticalSections)?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1361438</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1361438</guid><dc:creator><![CDATA[yogle]]></dc:creator><pubDate>Sat, 08 Sep 2007 16:16:13 GMT</pubDate></item><item><title><![CDATA[Reply to InterlockedExchange für bool on Sat, 08 Sep 2007 16:29:30 GMT]]></title><description><![CDATA[<p>Interlocked arbeitet nicht azf bool sondern auf LONG*! Wie hast Du das denn auf ein bool angewendet? Burtal gecastet.</p>
<p>Was stört Dich an einem LONG? Geht doch genauso.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1361450</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1361450</guid><dc:creator><![CDATA[Martin Richter]]></dc:creator><pubDate>Sat, 08 Sep 2007 16:29:30 GMT</pubDate></item><item><title><![CDATA[Reply to InterlockedExchange für bool on Sat, 08 Sep 2007 16:46:43 GMT]]></title><description><![CDATA[<pre><code class="language-cpp">InterlockedExchange ((LONG*) &amp;LS.bSend, true);
</code></pre>
<p>So z.B. <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f603.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--grinning_face_with_big_eyes"
      title=":D"
      alt="😃"
    /><br />
Klar könnte ich auch ein LONG nehmen, dann muss ich aber alles umschreiben, gibts es denn da nichts passendes?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1361466</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1361466</guid><dc:creator><![CDATA[yogle]]></dc:creator><pubDate>Sat, 08 Sep 2007 16:46:43 GMT</pubDate></item><item><title><![CDATA[Reply to InterlockedExchange für bool on Sat, 08 Sep 2007 16:58:32 GMT]]></title><description><![CDATA[<p>du könntest eine union aus bool und LONG benutzten</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1361471</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1361471</guid><dc:creator><![CDATA[fsddf]]></dc:creator><pubDate>Sat, 08 Sep 2007 16:58:32 GMT</pubDate></item><item><title><![CDATA[Reply to InterlockedExchange für bool on Sat, 08 Sep 2007 17:30:09 GMT]]></title><description><![CDATA[<p>yogle schrieb:</p>
<blockquote>
<pre><code class="language-cpp">InterlockedExchange ((LONG*) &amp;LS.bSend, true);
</code></pre>
<p>So z.B. <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f603.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--grinning_face_with_big_eyes"
      title=":D"
      alt="😃"
    /><br />
Klar könnte ich auch ein LONG nehmen, dann muss ich aber alles umschreiben, gibts es denn da nichts passendes?</p>
</blockquote>
<p>Solche Holzhammer casts sind übel. Lass es bleiben.<br />
Ich habe noch nie verstanden, dass casts an solchen Stellen so verwendet werden.<br />
Nimm zukünftig c++ Casts. und meide reinterpret_cast, dann wirst Du vom Compiler auf diese gefährlichen casts hingewiesen und Du kannst solche verbotenen Dinge gar nicht machen.</p>
<p>Was mus man umschreiben, wenn man aus einem bool ein long macht?<br />
IMHO dürfte da kaum etwas passieren.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1361486</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1361486</guid><dc:creator><![CDATA[Martin Richter]]></dc:creator><pubDate>Sat, 08 Sep 2007 17:30:09 GMT</pubDate></item></channel></rss>