Hallo liebe Community,
ich bin gerade dabei einen Socketserver + Client (TCP/IP) zu programmieren und habe noch einige grundsätzliche Fragen und werde bestimmt auch noch in kommender Zeit einige weiter Fragen haben, deswegen erstelle ich diesen Thread. Bin gerade erst dabei, mich in die Materie einzuarbeiten.
1. Kann ich ausschließen, dass es zu 0/1 Verdrehern kommt?
Beispiel:
3. Ist malloc sehr rechenintensiv? Ich arbeite mit pThreads und da ist die Frage, ob ich jedem Thread von Anfang an einen gewissen Platz im Stack freihalte oder je nach Bedarf mit malloc akquiriere. Ich möchte nicht, dass mein Server eine lahme Schnecke wird, weil er ständig damit beschäftigt ist den Speicher neu zu verwalten.
4. Wenn ein pThread (Serverseitig) gerade nichts für seinen Client tun kann, würde ich ihn gerne um Ressourcen zu sparen so lange mit pthread_cond_wait warten lassen.
Ist es möglich, dass der Client das pthread_cond_signal an den ja eigentlich schlafenden Thread sendet um ihn wieder aufzuwecken, wenn der Server dem Client vorher seine Adresse verrät? Dürfte ja eigentlich nicht gehen, da der Thread, der auf den Client hört ja derjenige ist, der schläft.
Oder gibt es hierfür eine bessere Möglichkeit oder ein go-around?
Vielen Dank für eure Mühen und Antworten!
Mit freundlichen Grüßen
Genius
ich bin gerade dabei einen Socketserver + Client (TCP/IP) zu programmieren und habe noch einige grundsätzliche Fragen und werde bestimmt auch noch in kommender Zeit einige weiter Fragen haben, deswegen erstelle ich diesen Thread. Bin gerade erst dabei, mich in die Materie einzuarbeiten.
1. Kann ich ausschließen, dass es zu 0/1 Verdrehern kommt?
Beispiel:
Code:
Client:
send(socket, „123\0“, 4, 0);
Server:
recv(socket, char, 4, 0);
printf(„%s\n“, char); => gibt zum Beispiel 112 aus
4. Wenn ein pThread (Serverseitig) gerade nichts für seinen Client tun kann, würde ich ihn gerne um Ressourcen zu sparen so lange mit pthread_cond_wait warten lassen.
Ist es möglich, dass der Client das pthread_cond_signal an den ja eigentlich schlafenden Thread sendet um ihn wieder aufzuwecken, wenn der Server dem Client vorher seine Adresse verrät? Dürfte ja eigentlich nicht gehen, da der Thread, der auf den Client hört ja derjenige ist, der schläft.
Oder gibt es hierfür eine bessere Möglichkeit oder ein go-around?
Vielen Dank für eure Mühen und Antworten!
Mit freundlichen Grüßen
Genius