<?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[[Socket-Chat] gleichzeitig empfangen und senden?]]></title><description><![CDATA[<p>Also ich habe mich jetzt mal mit Sockets beschäftigt und mir dazu <a href="http://www.c-worker.ch/" rel="nofollow">diese Seite</a> angeschaut. Naja, jetzt wollte ich mal ein kleines Chat-Programm (konsolen-basiert) schreiben.<br />
Aber da brauche ich wohl einen Denkanstoß. Bis jetzt stehe ich vor folgendem Problem:<br />
Wenn ein Client zur Texteingabe aufgefordert wird, kann er in dieser Zeit keine Daten empfangen. Aber das wesentlich an einem Chat ist ja, dass man Daten empfangen kann und dann darauf antwortet. Aber solange bei mir <em>gets(text);</em> läuft (damit der Benutzer seinen Text eingeben kann), ist alles andere blockiert und ich kann <em>recv()</em> logischerweise nicht aufrufen.<br />
Andersrum ist das Problem natürlich das gleiche, während ich auf Daten warte kann ich nichts eintippen und absenden.<br />
Ich hoffe ihr könnt mir da weiterhelfen. Kann ich die zwei funktionen vielleicht irgendwie &quot;fast gleichzeitig&quot; laufen lassen? Gibt's dafür vielleicht sowas ähnliches wie <em>select()</em>?</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/98882/socket-chat-gleichzeitig-empfangen-und-senden</link><generator>RSS for Node</generator><lastBuildDate>Tue, 28 Apr 2026 00:55:46 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/98882.rss" rel="self" type="application/rss+xml"/><pubDate>Sun, 23 Jan 2005 17:56:16 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to [Socket-Chat] gleichzeitig empfangen und senden? on Sun, 23 Jan 2005 17:56:16 GMT]]></title><description><![CDATA[<p>Also ich habe mich jetzt mal mit Sockets beschäftigt und mir dazu <a href="http://www.c-worker.ch/" rel="nofollow">diese Seite</a> angeschaut. Naja, jetzt wollte ich mal ein kleines Chat-Programm (konsolen-basiert) schreiben.<br />
Aber da brauche ich wohl einen Denkanstoß. Bis jetzt stehe ich vor folgendem Problem:<br />
Wenn ein Client zur Texteingabe aufgefordert wird, kann er in dieser Zeit keine Daten empfangen. Aber das wesentlich an einem Chat ist ja, dass man Daten empfangen kann und dann darauf antwortet. Aber solange bei mir <em>gets(text);</em> läuft (damit der Benutzer seinen Text eingeben kann), ist alles andere blockiert und ich kann <em>recv()</em> logischerweise nicht aufrufen.<br />
Andersrum ist das Problem natürlich das gleiche, während ich auf Daten warte kann ich nichts eintippen und absenden.<br />
Ich hoffe ihr könnt mir da weiterhelfen. Kann ich die zwei funktionen vielleicht irgendwie &quot;fast gleichzeitig&quot; laufen lassen? Gibt's dafür vielleicht sowas ähnliches wie <em>select()</em>?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/703995</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/703995</guid><dc:creator><![CDATA[Progamer]]></dc:creator><pubDate>Sun, 23 Jan 2005 17:56:16 GMT</pubDate></item><item><title><![CDATA[Reply to [Socket-Chat] gleichzeitig empfangen und senden? on Sun, 23 Jan 2005 18:02:14 GMT]]></title><description><![CDATA[<p>HI,<br />
Hilft dir nicht viel, aber das selbe problem habe ich auch... <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f61e.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--disappointed_face"
      title=":("
      alt="😞"
    /></p>
<p>MFG AmEnde</p>
]]></description><link>https://www.c-plusplus.net/forum/post/704001</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/704001</guid><dc:creator><![CDATA[AmEnde]]></dc:creator><pubDate>Sun, 23 Jan 2005 18:02:14 GMT</pubDate></item><item><title><![CDATA[Reply to [Socket-Chat] gleichzeitig empfangen und senden? on Sun, 23 Jan 2005 18:13:27 GMT]]></title><description><![CDATA[<p>Threads, WSAAsyncSelect...</p>
]]></description><link>https://www.c-plusplus.net/forum/post/704010</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/704010</guid><dc:creator><![CDATA[.....]]></dc:creator><pubDate>Sun, 23 Jan 2005 18:13:27 GMT</pubDate></item><item><title><![CDATA[Reply to [Socket-Chat] gleichzeitig empfangen und senden? on Sun, 23 Jan 2005 22:05:36 GMT]]></title><description><![CDATA[<p>Na, danke schonmal für die Antwort.<br />
Aber gibt es vielleicht irgendwo ein Beispiel-Code, in dem die Vorgehensweise von WSAAsyncSelect demonstriert wird? In die MSDN hab ich schon reingeschaut, aber ein kleines Beispiel fände ich nicht schlecht. Also falls da zufällig einer nen Link hat ... <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/704147</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/704147</guid><dc:creator><![CDATA[Progamer]]></dc:creator><pubDate>Sun, 23 Jan 2005 22:05:36 GMT</pubDate></item><item><title><![CDATA[Reply to [Socket-Chat] gleichzeitig empfangen und senden? on Sun, 23 Jan 2005 22:30:00 GMT]]></title><description><![CDATA[<p>Sorry, habe jetzt selbst was gefunden: <a href="http://www.ragestorm.net/tutorial?id=12" rel="nofollow">http://www.ragestorm.net/tutorial?id=12</a><br />
Also man benutzt das ganze wohl folgendermaßen:</p>
<pre><code>#define WM_READYTORECV (WM_APP + 100) //Neue Message 
...
WSAAsyncSelect(s, hwnd, WM_READYTORECV, FD_READ); // Wenn es was zum Lesen gibt wird  WM_READYTORECV and hwnd gesendet
...
case WM_READYTORECV: // Es wurde was gesendet - also können wir jetzt abfragen
     rc=recv(s,szBuffer,256,0);
     MessageBox(hwnd,  szBuffer,
                &quot;Meldung&quot;,
                MB_ICONINFORMATION | MB_OK );
break;
</code></pre>
<p>Jo, das war's eigentlich. Hoffe das hilft denen, die das gleiche Problem haben.<br />
mfg Progamer</p>
]]></description><link>https://www.c-plusplus.net/forum/post/704153</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/704153</guid><dc:creator><![CDATA[Progamer]]></dc:creator><pubDate>Sun, 23 Jan 2005 22:30:00 GMT</pubDate></item><item><title><![CDATA[Reply to [Socket-Chat] gleichzeitig empfangen und senden? on Sun, 23 Jan 2005 22:35:15 GMT]]></title><description><![CDATA[<p>Für WSAAsyncSelect hab ich ehrlich gesagt noch nie ein vernünftiges Beispiel gesehen. Nur triviale Beispiele.</p>
<p><a href="http://www.hal-pc.org/~johnnie2/winsock.html" rel="nofollow">http://www.hal-pc.org/~johnnie2/winsock.html</a></p>
<p>Hab mich aber gerade nochmal auf die Suche gemacht.</p>
<p><a href="http://winsock2.org/" rel="nofollow">http://winsock2.org/</a></p>
<p>Dort findet man verschiedene Beispiel. Klick dort mal httpa.c an.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/704156</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/704156</guid><dc:creator><![CDATA[.....]]></dc:creator><pubDate>Sun, 23 Jan 2005 22:35:15 GMT</pubDate></item><item><title><![CDATA[Reply to [Socket-Chat] gleichzeitig empfangen und senden? on Mon, 24 Jan 2005 10:31:47 GMT]]></title><description><![CDATA[<p>ich habe selbst mal das gleiche problem gehabt und es über threads gelöst - funktioniert...</p>
]]></description><link>https://www.c-plusplus.net/forum/post/704401</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/704401</guid><dc:creator><![CDATA[ItsNotYou]]></dc:creator><pubDate>Mon, 24 Jan 2005 10:31:47 GMT</pubDate></item></channel></rss>