<?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[Netzwerk Client-Server Modell Problem]]></title><description><![CDATA[<p>Hallo Leute,</p>
<p>ich bin gerade an einem Projekt, bei dem ich mich das erste mal mit Netzwerkprogrammierung auseinandersetzen muss. Ich habe ein recht typischen Client-Server Prinzip, doch mit einer Ausnahme die mir Kopfzerbrechen bereitet:</p>
<p>Der Client wird am Anfang Initialisiert und probiert eine Verbindung zum Server herzustellen. Ist der Server nicht vorhanden, muss der Client trotzdem ganz normal laufen, was an sich kein Problem ist.<br />
Doch sobald der Server gestartet wird, sollte so schnell wie möglich eine Verbindung zwischen ihnen vom Client aufgebaut werden.</p>
<p>Das Problem: ich kann nicht regelmäßig beim Client probieren eine Verbindung aufzubauen, da damit die Verarbeitung von Daten beim Client zu lange unterbrochen wird. Er darf es erst wieder probieren, wenn der Server auch wirklich gestartet ist.</p>
<p>Die Übertragung läuft via TCP/IP, und der Server müsste im Prinzip nach seinem Start einen Broadcast verschicken um den vorhandenen Clients zu zeigen das er &quot;online&quot; ist. Doch Broadcast via TCP? Das ist doch verbindungsgestützt. UDP ist auch keine gute Variante, da ich dann nicht sicher sein kann das das Paket ankommt.</p>
<p>Also meine Frage an euch: wie kann sich der Server am sinnvollsten bemerkbar machen?</p>
<p>Schonmal vielen Dank im voraus...</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/195997/netzwerk-client-server-modell-problem</link><generator>RSS for Node</generator><lastBuildDate>Sun, 05 Apr 2026 11:35:58 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/195997.rss" rel="self" type="application/rss+xml"/><pubDate>Wed, 24 Oct 2007 11:27:21 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Netzwerk Client-Server Modell Problem on Wed, 24 Oct 2007 11:27:21 GMT]]></title><description><![CDATA[<p>Hallo Leute,</p>
<p>ich bin gerade an einem Projekt, bei dem ich mich das erste mal mit Netzwerkprogrammierung auseinandersetzen muss. Ich habe ein recht typischen Client-Server Prinzip, doch mit einer Ausnahme die mir Kopfzerbrechen bereitet:</p>
<p>Der Client wird am Anfang Initialisiert und probiert eine Verbindung zum Server herzustellen. Ist der Server nicht vorhanden, muss der Client trotzdem ganz normal laufen, was an sich kein Problem ist.<br />
Doch sobald der Server gestartet wird, sollte so schnell wie möglich eine Verbindung zwischen ihnen vom Client aufgebaut werden.</p>
<p>Das Problem: ich kann nicht regelmäßig beim Client probieren eine Verbindung aufzubauen, da damit die Verarbeitung von Daten beim Client zu lange unterbrochen wird. Er darf es erst wieder probieren, wenn der Server auch wirklich gestartet ist.</p>
<p>Die Übertragung läuft via TCP/IP, und der Server müsste im Prinzip nach seinem Start einen Broadcast verschicken um den vorhandenen Clients zu zeigen das er &quot;online&quot; ist. Doch Broadcast via TCP? Das ist doch verbindungsgestützt. UDP ist auch keine gute Variante, da ich dann nicht sicher sein kann das das Paket ankommt.</p>
<p>Also meine Frage an euch: wie kann sich der Server am sinnvollsten bemerkbar machen?</p>
<p>Schonmal vielen Dank im voraus...</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1391120</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1391120</guid><dc:creator><![CDATA[Tobias W]]></dc:creator><pubDate>Wed, 24 Oct 2007 11:27:21 GMT</pubDate></item><item><title><![CDATA[Reply to Netzwerk Client-Server Modell Problem on Wed, 24 Oct 2007 11:36:42 GMT]]></title><description><![CDATA[<p>Tobias W schrieb:</p>
<blockquote>
<p>Das Problem: ich kann nicht regelmäßig beim Client probieren eine Verbindung aufzubauen, da damit die Verarbeitung von Daten beim Client zu lange unterbrochen wird.</p>
</blockquote>
<p>Kannst du den Verbindungsaufbau nicht einfach in nen eigenen Thread packen, der's dann alle paar Sekunden mal versucht?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1391130</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1391130</guid><dc:creator><![CDATA[Jester]]></dc:creator><pubDate>Wed, 24 Oct 2007 11:36:42 GMT</pubDate></item><item><title><![CDATA[Reply to Netzwerk Client-Server Modell Problem on Wed, 24 Oct 2007 11:48:37 GMT]]></title><description><![CDATA[<p>Naja, das Problem ist das dieser Client so Ressourcensparend wie möglich implementiert werden muss, und dann ist die Aufteilung in mehrere Threads nicht zu bevorzugen (Stichwort Threadwechsel, Mutexe/Semaphoren).</p>
<p>Falls ich allerdings doch einen Thread für die Netzwerkaufgaben abstelle, ist das die wahrscheinlich beste Möglichkeit. Nur probiere ich z.Z. noch mehrere Threads zu vermeiden.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1391141</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1391141</guid><dc:creator><![CDATA[Tobias W]]></dc:creator><pubDate>Wed, 24 Oct 2007 11:48:37 GMT</pubDate></item><item><title><![CDATA[Reply to Netzwerk Client-Server Modell Problem on Wed, 24 Oct 2007 12:35:55 GMT]]></title><description><![CDATA[<p>Also eine Broadcast aufnehmen und auswerten braucht auch Resourcen. Da ist es besser du macht eine Thread bzw. AsyncSockets.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1391181</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1391181</guid><dc:creator><![CDATA[Unix-Tom]]></dc:creator><pubDate>Wed, 24 Oct 2007 12:35:55 GMT</pubDate></item><item><title><![CDATA[Reply to Netzwerk Client-Server Modell Problem on Wed, 24 Oct 2007 12:51:15 GMT]]></title><description><![CDATA[<p>Der Client könnte laufend UDP Pakete an den Server schicken, der Server antwortet sobald er online ist.</p>
<p>Oder der Server schickt UDP Pakete an die Clients, allerdings müsste er dazu die IPs aller Clients kennen, oder die Clients und der Server müssten im gleichen Netzwerksegment sein.</p>
<p>Das &quot;nicht sicher&quot; bei UDP kann man dadurch umgehen dass man einfach alle paar Sekunden Pakete schickt - irgendwann geht schon eines durch.</p>
<p>Der Verbindungsaufbau bei TCP ist normalerweise auch nicht wirklich so &quot;sicher&quot;, da AFAIK unter Windows nur 3x (oder 5x?) ein ACK geschickt wird -- wenn alle 3 (5) verloren gehen schlägt der Verbindungsaufbau auch fehl.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1391195</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1391195</guid><dc:creator><![CDATA[hustbaer]]></dc:creator><pubDate>Wed, 24 Oct 2007 12:51:15 GMT</pubDate></item><item><title><![CDATA[Reply to Netzwerk Client-Server Modell Problem on Wed, 24 Oct 2007 13:01:22 GMT]]></title><description><![CDATA[<p>Tobias W schrieb:</p>
<blockquote>
<p>Naja, das Problem ist das dieser Client so Ressourcensparend wie möglich implementiert werden muss, und dann ist die Aufteilung in mehrere Threads nicht zu bevorzugen (Stichwort Threadwechsel, Mutexe/Semaphoren).</p>
</blockquote>
<p>Das halte ich für eine übertrieben kritische Darstellung. Thread-Wechsel sind im Gegensatz zu Prozesswechseln sehr ressourcen-schonend. Im Prinzip wird nur der Stackpointer geändert. Mutexe und Semaphoren sind ebenfalls nicht besonders teuer, wenn man sie richtig benutzt. In Deinem Fall ist ja kaum Synchronisation nötig. Eigentlich erst in dem Moment, wo anschließend eh eine Verbindung aufgebaut werden muß. Das kostet dann sowieso Zeit.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1391204</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1391204</guid><dc:creator><![CDATA[Jester]]></dc:creator><pubDate>Wed, 24 Oct 2007 13:01:22 GMT</pubDate></item><item><title><![CDATA[Reply to Netzwerk Client-Server Modell Problem on Wed, 24 Oct 2007 13:06:48 GMT]]></title><description><![CDATA[<p><a class="plugin-mentions-user plugin-mentions-a" href="https://www.c-plusplus.net/forum/uid/156">@Unix-Tom</a>:<br />
In wie weit braucht das aufnehmen eines Broadcasts mehr Ressourcen beim Empfänger? Kannst du mir das erklären, oder mir einen Tipp geben wo ich solche Infos finden kann? Danke!</p>
<p><a class="plugin-mentions-user plugin-mentions-a" href="https://www.c-plusplus.net/forum/uid/13960">@hustbaer</a>:<br />
Ich schätze anstatt laufend UDP Pakete zu senden wäre ein Thread der hin und wieder probiert die Connection aufzubauen sinnvoller. Ist zwar auch eine Art des Pollings, aber mir einfach sympathischer <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f642.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--slightly_smiling_face"
      title=":)"
      alt="🙂"
    /></p>
<p>Und zum Server -&gt; dieser hat keine Informationen darüber, wieviele Clients existieren.</p>
<p>Und das TCP auch nicht so sicher ist sei mal dahingestellt. Die Chance auf Fehler bei TCP ist doch wesentilch geringer als bei einer Datagrammübertragung (per UDP).</p>
<p><a class="plugin-mentions-user plugin-mentions-a" href="https://www.c-plusplus.net/forum/uid/324">@Jester</a>:<br />
Ich finde das nicht so übertrieben, denn die Daten aus dem Netzwerkthread müssen ja auch irgendwie geschützt an den anderen Thread weitergegeben werden. Und der Client läuft auf keinem PC im herkömmlichen Sinn, sondern auf einem Board der einen schon stark ausgelastetem PowerPC mit abgespecktem Linux hat. Der ist mit den aktuellen Arbeiten auch schon zu 60% beschäftigt...</p>
<p>Also ich sehe es wird mir wohl nichts anderes übrig bleiben als einen Thread für die Netzwerkaufgaben abzustellen...</p>
<p>Ach und danke für die vielen schnellen Antworten <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f44d.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--thumbs_up"
      title=":+1:"
      alt="👍"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/1391206</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1391206</guid><dc:creator><![CDATA[Tobias W]]></dc:creator><pubDate>Wed, 24 Oct 2007 13:06:48 GMT</pubDate></item><item><title><![CDATA[Reply to Netzwerk Client-Server Modell Problem on Wed, 24 Oct 2007 13:57:04 GMT]]></title><description><![CDATA[<p>Tobias W schrieb:</p>
<blockquote>
<p>Ich finde das nicht so übertrieben, denn die Daten aus dem Netzwerkthread müssen ja auch irgendwie geschützt an den anderen Thread weitergegeben werden.</p>
</blockquote>
<p>Moment mal, wir sprechen doch davon zu überprüfen, ob ein verbindungsaufbau möglich ist? Welche Daten müssen denn da weitergereicht werden? Abgesehen davon genügt zur weitergabe der daten doch ein pointer auf die Daten, oder? Für die Freigabe ist dann der Benutzer verantwortlich. Schließlich kann nur der wissen, wann er damit fertig ist.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1391248</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1391248</guid><dc:creator><![CDATA[Jester]]></dc:creator><pubDate>Wed, 24 Oct 2007 13:57:04 GMT</pubDate></item><item><title><![CDATA[Reply to Netzwerk Client-Server Modell Problem on Wed, 24 Oct 2007 14:30:09 GMT]]></title><description><![CDATA[<blockquote>
<p>Und das TCP auch nicht so sicher ist sei mal dahingestellt. Die Chance auf Fehler bei TCP ist doch wesentilch geringer als bei einer Datagrammübertragung (per UDP).</p>
</blockquote>
<p>Wenn du 5 UDP Pakete schickst (im Abstand von vielleicht 1 Sekunde, also nicht zu schnell) ist die Wahrscheinlichkeit dass wenigstens eines davon ankommt grösser als die Wahrscheinlichkeit dass der Aufbau einer TCP/IP Verbindung hinhaut. So war das zu verstehen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1391288</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1391288</guid><dc:creator><![CDATA[hustbaer]]></dc:creator><pubDate>Wed, 24 Oct 2007 14:30:09 GMT</pubDate></item><item><title><![CDATA[Reply to Netzwerk Client-Server Modell Problem on Wed, 24 Oct 2007 18:02:41 GMT]]></title><description><![CDATA[<p><a class="plugin-mentions-user plugin-mentions-a" href="https://www.c-plusplus.net/forum/uid/324">@Jester</a>:<br />
Also ich hab nicht genau erzählt was genau gemacht wird. Einen Benutzer im herkömmlichen Sinne gibts nicht. Weder Client noch Server werden von einem Menschen bedient. Es können Daten vom Host kommen die der Client im ersten Thread verarbeiten muss und anders rum. Und um keinen gegenseitigen Ausschluss zu erzeugen wenn diese Daten vom anderen Thread auslesen, benötige ich z.B. ein Mutex.<br />
Und das Problem hätte ich eben mit einem Thread nicht.</p>
<p>Aber ich sehe schon: alles andere als den Client in 2 Threads zu teilen wäre Frickelwerk...</p>
<p><a class="plugin-mentions-user plugin-mentions-a" href="https://www.c-plusplus.net/forum/uid/13960">@hustbaer</a>:<br />
Naja, ich glaub dir das jetzt mal gerne, ich hab mich nämlich damit nie beschäftigt wie hoch die Wahrscheinlichkeiten von solchen Dingen sind. Aber danke für den Hinweis. Ich hätte mich jetzt auf die &quot;Sicherheit&quot; von TCP verlassen. Tja, bin halt ein naiver Mensch <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f644.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--face_with_rolling_eyes"
      title=":rolling_eyes:"
      alt="🙄"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/1391418</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1391418</guid><dc:creator><![CDATA[Tobias W]]></dc:creator><pubDate>Wed, 24 Oct 2007 18:02:41 GMT</pubDate></item><item><title><![CDATA[Reply to Netzwerk Client-Server Modell Problem on Wed, 24 Oct 2007 18:10:47 GMT]]></title><description><![CDATA[<p>Tobias W schrieb:</p>
<blockquote>
<p><a class="plugin-mentions-user plugin-mentions-a" href="https://www.c-plusplus.net/forum/uid/324">@Jester</a>:<br />
Also ich hab nicht genau erzählt was genau gemacht wird. Einen Benutzer im herkömmlichen Sinne gibts nicht. Weder Client noch Server werden von einem Menschen bedient.</p>
</blockquote>
<p>Äh ja. Hast Du jemals als Benutzer in diesem Sinne Speicher freigegeben? -- Ne? Genau: Mit Benutzer ist hier natürlich derjenige gemeint, der den restlichen Client-Code programmiert. Und das Netzwerkmodul als Bibliothek verwendet. (Bitte komm mir jetzt nicht mit &quot;ich programmiere das aber alleine&quot;)</p>
<blockquote>
<p>Und um keinen gegenseitigen Ausschluss zu erzeugen wenn diese Daten vom anderen Thread auslesen, benötige ich z.B. ein Mutex.<br />
Und das Problem hätte ich eben mit einem Thread nicht.</p>
</blockquote>
<p>Naja, im Prinzip mußt du ja nur nen pointer übertragen. Da nur einer schreibt ist das garnicht sooo kritisch... evtl kann man, wenn's geschickt gemacht ist, da um ne komplette synchronisation mit nem mutex rumkommen.</p>
<p>Abgesehen davon ist das selten das Problem -- wenn es gut gemacht ist. <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f642.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--slightly_smiling_face"
      title=":)"
      alt="🙂"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/1391425</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1391425</guid><dc:creator><![CDATA[Jester]]></dc:creator><pubDate>Wed, 24 Oct 2007 18:10:47 GMT</pubDate></item><item><title><![CDATA[Reply to Netzwerk Client-Server Modell Problem on Wed, 24 Oct 2007 19:00:33 GMT]]></title><description><![CDATA[<blockquote>
<p>evtl kann man, wenn's geschickt gemacht ist, da um ne komplette synchronisation mit nem mutex rumkommen.</p>
</blockquote>
<p>Nur wenn man Lust hat selbst mit Barriers zu arbeiten, oder sich auf plattformspezifische Eigenheiten zu verlassen <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="😉"
    /><br />
Ich würde einfach ne Mutex nehmen, und dann mal gucken ob's ein Problem gibt vonwegen langsam (was ich nicht erwarte).</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1391453</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1391453</guid><dc:creator><![CDATA[hustbaer]]></dc:creator><pubDate>Wed, 24 Oct 2007 19:00:33 GMT</pubDate></item><item><title><![CDATA[Reply to Netzwerk Client-Server Modell Problem on Wed, 24 Oct 2007 19:04:13 GMT]]></title><description><![CDATA[<p>hustbaer schrieb:</p>
<blockquote>
<p>Nur wenn man Lust hat selbst mit Barriers zu arbeiten, oder sich auf plattformspezifische Eigenheiten zu verlassen <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>
</blockquote>
<p>Dadurch, dass die Kommunikation nur in eine Richtung geht muß man das vermutlich nichtmal... aber wie auch immer. Auch mit Mutex dürfte die performance kein problem sein.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1391456</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1391456</guid><dc:creator><![CDATA[Jester]]></dc:creator><pubDate>Wed, 24 Oct 2007 19:04:13 GMT</pubDate></item><item><title><![CDATA[Reply to Netzwerk Client-Server Modell Problem on Wed, 24 Oct 2007 19:25:41 GMT]]></title><description><![CDATA[<p>Klar, der Client wird als Bibliothek von anderen verwendet. Aber ich möchte mich nicht drauf verlassen das es bei geschickter Pointerübergabe problemlos laufen könnte.</p>
<p>Wenn das mal ausgeliefert wird und nach einigen Monaten lässt diese Stelle ein Modul aufhängen, will ich nicht in der nähe meines Cheffe sein <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="😃"
    /></p>
<p>Mal im ernst, ich denke ich schreib mir einen kleinen Prototypen mit dem ich die Last mal simulieren kann, dann werd ich weiter sehen. Eventuell seh ich das ganze Performancetechnisch zu eng.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1391467</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1391467</guid><dc:creator><![CDATA[Tobias W]]></dc:creator><pubDate>Wed, 24 Oct 2007 19:25:41 GMT</pubDate></item><item><title><![CDATA[Reply to Netzwerk Client-Server Modell Problem on Wed, 24 Oct 2007 19:34:29 GMT]]></title><description><![CDATA[<p>Tobias W schrieb:</p>
<blockquote>
<p>Klar, der Client wird als Bibliothek von anderen verwendet. Aber ich möchte mich nicht drauf verlassen das es bei geschickter Pointerübergabe problemlos laufen könnte.</p>
</blockquote>
<p>Ich weiß nicht, von welchen Frickelqualitäten Du bei mir ausgehst, aber wenn ich meine, dass das funktioniert wenn man es geschickt macht, dann meine ich, dass man es auf bibliothekseite geschickt machen muß, nicht dass es eventuell funktioniert, wenn der (bibliotheks-)client geschickt arbeitet.</p>
<p>Ein Lasttest klingt wirklich vernünftig. Ich tippe, dass die Synchronisation kein Problem sein wird. Lass mal was von Dir hören, wenn Du mehr weißt!</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1391472</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1391472</guid><dc:creator><![CDATA[Jester]]></dc:creator><pubDate>Wed, 24 Oct 2007 19:34:29 GMT</pubDate></item><item><title><![CDATA[Reply to Netzwerk Client-Server Modell Problem on Wed, 24 Oct 2007 19:43:42 GMT]]></title><description><![CDATA[<blockquote>
<p>Lass mal was von Dir hören, wenn Du mehr weißt!</p>
</blockquote>
<p>Werd ich machen. Außerdem muss ich mich eindeutig tiefer in das Thema Threads einlesen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1391478</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1391478</guid><dc:creator><![CDATA[Tobias W]]></dc:creator><pubDate>Wed, 24 Oct 2007 19:43:42 GMT</pubDate></item><item><title><![CDATA[Reply to Netzwerk Client-Server Modell Problem on Wed, 24 Oct 2007 21:32:50 GMT]]></title><description><![CDATA[<p>Jester schrieb:</p>
<blockquote>
<p>hustbaer schrieb:</p>
<blockquote>
<p>Nur wenn man Lust hat selbst mit Barriers zu arbeiten, oder sich auf plattformspezifische Eigenheiten zu verlassen <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>
</blockquote>
<p>Dadurch, dass die Kommunikation nur in eine Richtung geht muß man das vermutlich nichtmal... aber wie auch immer. Auch mit Mutex dürfte die performance kein problem sein.</p>
</blockquote>
<p>Wenn man nur einen Zeiger austauscht müsste man das Schreiben des Zeigers &quot;mit release&quot; sein und das Lesen des Zeigers &quot;mit acquire&quot;.<br />
Dafür braucht man je nach Plattform ne CPU memory barrier, und auf jeden Fall ne Compiler Barrier.</p>
<p>Da man dabei so enorm viel übersehen und ganz allgemein falsch machen kann würde ich auf jeden Fall erstmal mit einer Mutex anfangen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1391544</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1391544</guid><dc:creator><![CDATA[hustbaer]]></dc:creator><pubDate>Wed, 24 Oct 2007 21:32:50 GMT</pubDate></item><item><title><![CDATA[Reply to Netzwerk Client-Server Modell Problem on Thu, 25 Oct 2007 05:18:28 GMT]]></title><description><![CDATA[<p>Tobias W schrieb:</p>
<blockquote>
<p><a class="plugin-mentions-user plugin-mentions-a" href="https://www.c-plusplus.net/forum/uid/156">@Unix-Tom</a>:<br />
In wie weit braucht das aufnehmen eines Broadcasts mehr Ressourcen beim Empfänger? Kannst du mir das erklären, oder mir einen Tipp geben wo ich solche Infos finden kann? Danke!</p>
</blockquote>
<p>Ob er nun wartet das ein UDP und diesen dann auswertet (könnte ja auch ein anderes Programm verursachen) kommt oder ob er versucht eine Verbindung zum Server aufzubauen spielt da keine Rolle. Beides braucht CPU-Leistung.<br />
Er sagte das er es deshalb nicht machen möchte weil er Ressourcen sparen will und kein Threads möchte.<br />
Code braucht er sowieso. Der Client lauscht oder er sendet.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1391585</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1391585</guid><dc:creator><![CDATA[Unix-Tom]]></dc:creator><pubDate>Thu, 25 Oct 2007 05:18:28 GMT</pubDate></item><item><title><![CDATA[Reply to Netzwerk Client-Server Modell Problem on Wed, 31 Oct 2007 10:48:19 GMT]]></title><description><![CDATA[<p>So, nur so zur Info:</p>
<p>Ein Lasttest hat ergeben, dass die Performance mit 2 Threads kein Problem sein sollte. Auch Mutexe zur synchronisation bringen die Last nicht annähernd so hoch wie ich befürchtet habe.</p>
<p>Das heißt ich werde, auch wenn die Kommunikation nur in eine Richtung geht, Mutexe verwenden um sicher zu stellen das nichts schief geht.</p>
<p>Nochmal vielen Dank für die vielen hilfreichen Antworten...</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1395105</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1395105</guid><dc:creator><![CDATA[Tobias W]]></dc:creator><pubDate>Wed, 31 Oct 2007 10:48:19 GMT</pubDate></item></channel></rss>