Torna indietro   Hardware Upgrade Forum > Software > Programmazione

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
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: Intel cerca il riscatto ma ci riesce in parte
Abbiamo provato le nuove CPU Intel Core Ultra 7 270K Plus e Core Ultra 7 250K Plus: più core e ottimizzazioni al funzionamento interno migliorano le prestazioni, anche in virtù di prezzi annunciati interessanti. A questo si aggiungono nuove ottimizzazioni software. Purtroppo, a fronte di prestazioni di calcolo elevate, il quadro rimane incerto nel gaming, dove l'andamento rimane altalenante. Infine, rimane il problema della piattaforma a fine vita.
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 07-03-2003, 18:20   #1
Cimmo
Senior Member
 
L'Avatar di Cimmo
 
Iscritto dal: Jan 2001
Città: California
Messaggi: 7174
Sto strippando...ancora socket su C...AIUTATEMI VI PREGO!

Sto lavorando in concorrenza e un server apre un listening socket in attesa di una connessione, poi i client (su altre macchine) tentano di connettersi. Il fatto e' che tutti i client credono di essersi connessi correttamente, pero' solo alcuni di essi lo sono veramente perche' dal lato server ne accetta 2 o 3 (variabile) su 4 che dovrebbe accettare...MA PERCHE'???
Il server al terzo o quarto client sembra quasi che non lo vede nemmeno, si ferma sull'accept e sta li' all'infinito, il client invece crede (non so perche') di essersi connesso correttamente e poi prova a comunicare e ovviamente non ci riesce...IDEE?
Dimenticavo: lavoro in C sotto Linux

SERVER:
Codice:
int openListeningSocket(void)
{
        struct sockaddr_in Local, Cli;
        int socketfd, newsocketfd, OptVal, len, ris;

        /* get a stream socket */
        printf ("socket()\n");
        socketfd=socket(AF_INET, SOCK_STREAM, 0);

        if (socketfd==SOCKET_ERROR)
        {
                printf ("socket() failed, Err: %d \"%s\"\n", errno,strerror(errno));
                exit(1);
        }

        /* avoid EADDRINUSE error on bind() */
        OptVal=1;
        printf ("setsockopt()\n");
        ris=setsockopt(socketfd, SOL_SOCKET, SO_REUSEADDR, (char *)&OptVal, sizeof(OptVal));

        if (ris==SOCKET_ERROR)
        {
                printf ("setsockopt() SO_REUSEADDR failed, Err: %d \"%s\"\n", errno,strerror(errno));
                exit(1);
        }

        /* name the socket */
        memset (&Local, 0, sizeof(Local));
        Local.sin_family        =       AF_INET;
        /* indicando INADDR_ANY viene collegato il socket all'indirizzo locale IP     */
        /* dell'interaccia di rete che verrÃ|  utilizzata per inoltrare il datagram IP  */
        Local.sin_addr.s_addr   =       htonl(INADDR_ANY);         /* wildcard */
        Local.sin_port          =       htons(local_port_number);

        printf ("bind()\n");
        ris=bind(socketfd, (struct sockaddr*) &Local, sizeof(Local));

        if (ris==SOCKET_ERROR)
        {
                printf ("bind() failed, Err: %d \"%s\"\n",errno,strerror(errno));
                exit(1);
        }

        printf ("listen()\n");
        ris=listen(socketfd, 100);

        if (ris==SOCKET_ERROR)
        {
                printf ("listen() failed, Err: %d \"%s\"\n",errno,strerror(errno));
                exit(1);
        }

        /* wait for connection request */
        memset (&Cli, 0, sizeof(Cli));
        len=sizeof(Cli);

        printf ("accept()\n");
        newsocketfd=accept(socketfd, (struct sockaddr*) &Cli, &len);

        if (newsocketfd==SOCKET_ERROR)
        {
                printf ("accept() failed, Err: %d \"%s\"\n",errno,strerror(errno));
                exit(1);
        }

        /* chiusura */
        printf ("close()\n");
        close(socketfd);

        return(newsocketfd);
};

CLIENT:
Codice:
int connectToSocket(char tcp[20], char port[20])
{
        struct sockaddr_in Local, Serv;
        char string_remote_ip_address[100];
        short unsigned int remote_port_number;
        int socketfd, OptVal, ris;

        strncpy(string_remote_ip_address, tcp, 20);
        remote_port_number = atoi(port);

        /* get a datagram socket */
        //printf ("socket()\n");
        socketfd=socket(AF_INET, SOCK_STREAM, 0);

        if (socketfd<0)
        {
                printf ("socket() failed, Err: %d \"%s\"\n", errno,strerror(errno));
                return(-1);
        }

        /* avoid EADDRINUSE error on bind() */
        OptVal=1;

        //printf ("setsockopt()\n");
        ris=setsockopt(socketfd, SOL_SOCKET, SO_REUSEADDR, (char *)&OptVal, sizeof(OptVal));

        if (ris<0)
        {
                printf ("setsockopt() SO_REUSEADDR failed, Err: %d \"%s\"\n", errno,strerror(errno));
                return(-1);
        }

        /* name the socket */
        memset(&Local,0,sizeof(Local));
        Local.sin_family        =       AF_INET;
        /* indicando INADDR_ANY viene collegato il socket all'indirizzo locale IP     */
        /* dell'interfaccia di rete che verrÃ|  utilizzata per inoltrare i dati          */
        Local.sin_addr.s_addr   =       htonl(INADDR_ANY);         /* wildcard */
        Local.sin_port          =       htons(0);

        //printf ("bind()\n");
        ris=bind(socketfd, (struct sockaddr*) &Local, sizeof(Local));

        if (ris<0)
        {
                printf ("bind() failed, Err: %d \"%s\"\n",errno,strerror(errno));
                return(-1);
                //exit(1);
        }

        /* assign our destination address */
        memset(&Serv, 0, sizeof(Serv));
        Serv.sin_family         =       AF_INET;
        Serv.sin_addr.s_addr    =     
       inet_addr(string_remote_ip_address);
        Serv.sin_port           =       htons(remote_port_number);

        /* connection request */
        //printf ("connect()\n");
        ris=connect(socketfd, (struct sockaddr*) &Serv, sizeof(Serv));

        if (ris<0)
        {
                printf ("connect() to %s:%d failed, Err: %d \"%s\"\n",string_remote_ip_address,remote_port_number,errno,strerror(errno));
                return(-1);
        }

        return(socketfd);
};
Cimmo è offline   Rispondi citando il messaggio o parte di esso
Old 07-03-2003, 19:22   #2
cionci
Senior Member
 
L'Avatar di cionci
 
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
Perchè il socket in ascolto non lo lasci aperto invece di chiuderlo ad ogni connessione che fai ? Non è questo il metodo corretto di operare...
cionci è offline   Rispondi citando il messaggio o parte di esso
Old 07-03-2003, 19:32   #3
Cimmo
Senior Member
 
L'Avatar di Cimmo
 
Iscritto dal: Jan 2001
Città: California
Messaggi: 7174
Quote:
Originally posted by "cionci"

Perchè il socket in ascolto non lo lasci aperto invece di chiuderlo ad ogni connessione che fai ? Non è questo il metodo corretto di operare...
Hai ragione sono un co@lione! Perche' chiudo e riapro il socket non lo so neppure io...
Cimmo è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


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...
Recensione Nothing Phone 4(a): sempre iconico ma ora più concreto Recensione Nothing Phone 4(a): sempre iconico ma...
L'AI agentica potrebbe trasformare Inter...
Qualcomm lancerà due chip per sma...
Xiaomi dà i numeri: ecco come &eg...
AMD annuncia Ryzen 9 9950X3D2 Dual Editi...
CyrusOne avvia la costruzione del suo pr...
Cloud in crescita, ma l’adozione dell’IA...
OpenAI cancella l'adult mode di ChatGPT:...
Google Search Live arriva in Italia: la ...
MacBook Air 15'' con chip M4 (2025) crol...
Ora è possibile trasferire file t...
Apple domina con il MacBook Neo: i lapto...
Arriva la nuova gamma di PC Dell Pro per...
DJI Avata 360: la recensione del primo d...
Il browser di Samsung arriva su Windows,...
I satelliti AI Sat Mini per i datacenter...
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: 06:47.


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