Torna indietro   Hardware Upgrade Forum > Software > Programmazione

HP Imagine 2026: abbiamo visto HP IQ all’opera, ecco cosa può (e non può) fare
HP Imagine 2026: abbiamo visto HP IQ all’opera, ecco cosa può (e non può) fare
A New York HP ha messo al centro della scena HP IQ, la piattaforma di IA locale da 20 miliardi di parametri. L’abbiamo vista in funzione: è uno strumento che funziona, pensato per un target specifico, con vantaggi reali e limiti altrettanto evidenti
PNY RTX 5080 Slim OC, sembra una Founders Edition ma non lo è
PNY RTX 5080 Slim OC, sembra una Founders Edition ma non lo è
La PNY GeForce RTX 5080 Slim OC si distingue nel panorama delle GPU di fascia alta per il design compatto a due slot, ispirato alla NVIDIA GeForce RTX 5080 Founders Edition. In questo test analizziamo comportamento termico e prestazioni in gioco, valutando se il formato ridotto comprometta o meno l'esperienza complessiva rispetto alle soluzioni più ingombranti presenti sul mercato.
Wi-Fi 7 con il design di una vetta innevata: ecco il nuovo sistema mesh di Huawei
Wi-Fi 7 con il design di una vetta innevata: ecco il nuovo sistema mesh di Huawei
HUAWEI WiFi Mesh X3 Pro Suite è probabilmente il router mesh più fotogenico che si possa acquistare oggi in Italia, ma dietro il guscio in acrilico trasparente e le luci LED dinamiche c'è una macchina tecnica costruita attorno allo standard Wi-Fi 7, con velocità teoriche Dual-Band fino a 3,6 Gbps e una copertura fino a 120 m² una volta abbinato il router principale all'extender incluso nel kit
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 13-03-2014, 10:01   #1
skipper_87
Junior Member
 
Iscritto dal: Mar 2014
Messaggi: 6
[C] Socket Client/Server

Buongiorno a tutti!
Ho un problema nella realizzazione di una chat client/server.
Il problema è che non riesco a gestire due client, ovvero il server risponde solo a uno e non a piu di un client connessi.

Il codice del server è piu meno cosi:
Codice:
creo socket serverfd
bind();
listen(serverfd, );

pthread_t invio;
pthread_t ricevo;

while(true){
clientfd=accept(serverfd,  );

new_client=malloc(1);
*new_client=clientfd;

pthread_create(&invio, NULL, funz_invio, (void*) new_client);
pthread_create(&ricevo, NULL, funz_ricevo, (void*) new_client);

return 0;
} //fine main


void *funz_invio(void *socket){
int sock= *(int*) socket;
while(){... send(sock, )..}
}

void *funz_ricevo(void *socket){
int sock= *(int*) socket;
while(){... recv(sock, ) ..}
}

}
lo stesso nella parte client ho due thread uno per ricever e uno per inviare praticamente speculari.

cosa succede:
il client si connette (e scrive e riceve con il server) //tutto ok!
il client2 si connette (e scrive al server.. ) // tutto ok!

il problema è che se il server scrive... riceve solo il client1 e non il client2
come è possibile? dove sbaglio?

grazie a tutti quelli che mi daranno una mano!+
skipper_87 è offline   Rispondi citando il messaggio o parte di esso
Old 13-03-2014, 10:11   #2
lorenzo001
Senior Member
 
Iscritto dal: Jul 2008
Città: Roma
Messaggi: 542
Tanto per cominciare perché con questa

new_client=malloc(1);

allochi "un byte" ? Che ci fai con un byte?
lorenzo001 è offline   Rispondi citando il messaggio o parte di esso
Old 13-03-2014, 11:33   #3
skipper_87
Junior Member
 
Iscritto dal: Mar 2014
Messaggi: 6
Quote:
Originariamente inviato da lorenzo001 Guarda i messaggi
Tanto per cominciare perché con questa

new_client=malloc(1);

allochi "un byte" ? Che ci fai con un byte?
Si è vero, era per usarlo nella funzione del thread, ho visto che non cambia nulla se uso direttamente new_client=clientfd, senza il malloc.
L'ho corretto dopo.

Però il problema sta altrove..
skipper_87 è offline   Rispondi citando il messaggio o parte di esso
Old 13-03-2014, 17:04   #4
Oceans11
Senior Member
 
L'Avatar di Oceans11
 
Iscritto dal: Sep 2005
Città: Torino
Messaggi: 606
così su due piedi credo che il problema stia nella logica
tu dovresti creare un thread per client, non un thread per invio ed uno per ricezione.
__________________
"Se proprio dovete piratare un prodotto, preferiamo che sia il nostro piuttosto che quello di qualcun altro." [Jeff Raikes]
"Pirating software? Choose Microsoft!"
Oceans11 è offline   Rispondi citando il messaggio o parte di esso
Old 13-03-2014, 22:00   #5
skipper_87
Junior Member
 
Iscritto dal: Mar 2014
Messaggi: 6
Quote:
Originariamente inviato da Oceans11 Guarda i messaggi
così su due piedi credo che il problema stia nella logica
tu dovresti creare un thread per client, non un thread per invio ed uno per ricezione.
esattamente.. è quello che fa il while no?
Aspetto.. quando un client chiede di connettersi lo accetto.. e per ogni client che accetto apro due thread.. uno per inviare e uno per ricevere...
Io l'avevo pensata cosi...
skipper_87 è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


HP Imagine 2026: abbiamo visto HP IQ all’opera, ecco cosa può (e non può) fare HP Imagine 2026: abbiamo visto HP IQ all’opera, ...
PNY RTX 5080 Slim OC, sembra una Founders Edition ma non lo è PNY RTX 5080 Slim OC, sembra una Founders Editio...
Wi-Fi 7 con il design di una vetta innevata: ecco il nuovo sistema mesh di Huawei Wi-Fi 7 con il design di una vetta innevata: ecc...
Core Ultra 7 270K Plus e Core Ultra 7 250K Plus: Intel cerca il riscatto ma ci riesce in parte Core Ultra 7 270K Plus e Core Ultra 7 250K Plus:...
PC Specialist Lafité 14 AI AMD: assemblato come vuoi tu PC Specialist Lafité 14 AI AMD: assemblat...
La serie di God of War ha trovato l'attr...
Il nuovo iPhone Fold si farà atte...
Ex CEO di Intel furioso verso Wall Stree...
Un foglietto di rame e le prestazioni di...
100 agenti AI per dipendente: quello che...
Le 10 migliori offerte del weekend Amazo...
75'' e 85'' QD-Mini LED: 2 TV interessan...
Offerte Amazon sui componenti hardware P...
iOS 27 porterà tante novità...
Tutte le migliori offerte sui robot aspi...
Attenti ai Samsung 990 Pro contraffatti,...
2 prezzi eccezionali: scope elettriche l...
Crimson Desert arriva anche su Switch 2?...
2 iPhone in offerta su Amazon: il 17 256...
Il dodicesimo lancio del razzo spaziale ...
Chromium
GPU-Z
OCCT
LibreOffice Portable
Opera One Portable
Opera One 106
CCleaner Portable
CCleaner Standard
Cpu-Z
Driver NVIDIA GeForce 546.65 WHQL
SmartFTP
Trillian
Google Chrome Portable
Google Chrome 120
VirtualBox
Tutti gli articoli Tutte le news Tutti i download

Strumenti

Regole
Non Puoi aprire nuove discussioni
Non Puoi rispondere ai messaggi
Non Puoi allegare file
Non Puoi modificare i tuoi messaggi

Il codice vB è On
Le Faccine sono On
Il codice [IMG] è On
Il codice HTML è Off
Vai al Forum


Tutti gli orari sono GMT +1. Ora sono le: 15:30.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Served by www3v