<?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[Unterschied Event - Semaphore]]></title><description><![CDATA[<p>Ein Manual Reset Event verhaelt sich gleich wie eine Semaphore?</p>
<pre><code class="language-cpp">HANDLE hEvent = CreateEvent (NULL, false, false, &quot;MyEvent&quot;); // Manual Reset, non-signaled
HANDLE hSem = CreateSemaphore(NULL, 1, 1, &quot;MySem&quot;); // non-signaled

SetEvent(hEvent)...auf signaled setzen                                              == ReleaseSemaphore(hSem, 1, NULL)...auf signaled setzen
ResetEvent(hEvent)...auf non-signaled setzen                                        == WaitForSingleObject(hSem, INFINITE)...auf non-signaled setzen
WaitForSingleObject(hEvent, INFINITE) == Warten bis hEvent signaled ist		    == WaitForSingleObject(hSem, INFINITE) + ReleaseSemaphore(hSem, 1, NULL)
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/topic/162247/unterschied-event-semaphore</link><generator>RSS for Node</generator><lastBuildDate>Sat, 18 Jul 2026 03:21:24 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/162247.rss" rel="self" type="application/rss+xml"/><pubDate>Mon, 16 Oct 2006 17:30:28 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Unterschied Event - Semaphore on Mon, 16 Oct 2006 17:30:28 GMT]]></title><description><![CDATA[<p>Ein Manual Reset Event verhaelt sich gleich wie eine Semaphore?</p>
<pre><code class="language-cpp">HANDLE hEvent = CreateEvent (NULL, false, false, &quot;MyEvent&quot;); // Manual Reset, non-signaled
HANDLE hSem = CreateSemaphore(NULL, 1, 1, &quot;MySem&quot;); // non-signaled

SetEvent(hEvent)...auf signaled setzen                                              == ReleaseSemaphore(hSem, 1, NULL)...auf signaled setzen
ResetEvent(hEvent)...auf non-signaled setzen                                        == WaitForSingleObject(hSem, INFINITE)...auf non-signaled setzen
WaitForSingleObject(hEvent, INFINITE) == Warten bis hEvent signaled ist		    == WaitForSingleObject(hSem, INFINITE) + ReleaseSemaphore(hSem, 1, NULL)
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1155886</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1155886</guid><dc:creator><![CDATA[Detlef]]></dc:creator><pubDate>Mon, 16 Oct 2006 17:30:28 GMT</pubDate></item><item><title><![CDATA[Reply to Unterschied Event - Semaphore on Mon, 16 Oct 2006 18:52:37 GMT]]></title><description><![CDATA[<p>manual reste ist ja:</p>
<pre><code class="language-cpp">HANDLE hEvent = CreateEvent(NULL, true, false, &quot;MyEvent&quot; );
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1155923</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1155923</guid><dc:creator><![CDATA[Detlef]]></dc:creator><pubDate>Mon, 16 Oct 2006 18:52:37 GMT</pubDate></item><item><title><![CDATA[Reply to Unterschied Event - Semaphore on Mon, 16 Oct 2006 19:08:05 GMT]]></title><description><![CDATA[<p>korrektur:</p>
<pre><code class="language-cpp">HANDLE hEvent = CreateEvent (NULL, true, false, &quot;MyEvent&quot;); // Manual Reset, non-signaled
HANDLE hSem = CreateSemaphore(NULL, 1, 1, &quot;MySem&quot;); // non-signaled

SetEvent(hEvent)...auf signaled setzen                                              == ReleaseSemaphore(hSem, 1, NULL)...auf signaled setzen
ResetEvent(hEvent)...auf non-signaled setzen                                        == WaitForSingleObject(hSem, 0)...auf non-signaled setzen
WaitForSingleObject(hEvent, INFINITE)...warten bis hEvent signaled ist              == WaitForSingleObject(hSem, INFINITE)...warten bis hSem signaled ist
</code></pre>
<p>muesste eigentlich ok sein?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1155927</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1155927</guid><dc:creator><![CDATA[Detlef]]></dc:creator><pubDate>Mon, 16 Oct 2006 19:08:05 GMT</pubDate></item><item><title><![CDATA[Reply to Unterschied Event - Semaphore on Wed, 18 Oct 2006 12:24:24 GMT]]></title><description><![CDATA[<p>irgendwie ist das verhalten doch nicht das gleich:)</p>
<p>gibt es faelle wo man eine events nicht durch semaphoren ersetzen kann? bei gerade am proggen bei so einer message queue...ich schaff es einfach nicht hier nur sem statt events zu verwenden...immer ein deathlock:/</p>
<p>cu</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1157050</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1157050</guid><dc:creator><![CDATA[Detlef]]></dc:creator><pubDate>Wed, 18 Oct 2006 12:24:24 GMT</pubDate></item><item><title><![CDATA[Reply to Unterschied Event - Semaphore on Wed, 18 Oct 2006 12:40:10 GMT]]></title><description><![CDATA[<p>funktion:<br />
man definiert zb die message queue mit 10 eintraegen. beim elften write in die queue wird solange gewartet werden bis min 1 eintrag wieder ausgelesen wird.<br />
und wenn zb 0 eintraege vorhanden sind und dann read aufgerufen wird, muss auch solange gewartet werden bis min einmal write durchgefuehrt wird.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1157066</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1157066</guid><dc:creator><![CDATA[Detlef]]></dc:creator><pubDate>Wed, 18 Oct 2006 12:40:10 GMT</pubDate></item></channel></rss>