Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Tastiera gaming MSI GK600 TKL: switch hot-swap, display LCD e tre modalità wireless
Tastiera gaming MSI GK600 TKL: switch hot-swap, display LCD e tre modalità wireless
MSI FORGE GK600 TKL WIRELESS: switch lineari hot-swap, tripla connettività, display LCD e 5 strati di fonoassorbimento. Ottima in gaming, a 79,99 euro
DJI Osmo Pocket 4: la gimbal camera tascabile cresce e ha nuovi controlli fisici
DJI Osmo Pocket 4: la gimbal camera tascabile cresce e ha nuovi controlli fisici
DJI porta un importante aggiornamento alla sua linea di gimbal camera tascabili con Osmo Pocket 4: sensore CMOS da 1 pollice rinnovato, gamma dinamica a 14 stop, profilo colore D-Log a 10 bit, slow motion a 4K/240fps e 107 GB di archiviazione integrata. Un prodotto pensato per i creator avanzati, ma che convince anche per l'uso quotidiano
Sony INZONE H6 Air: il primo headset open-back di Sony per giocatori
Sony INZONE H6 Air: il primo headset open-back di Sony per giocatori
Il primo headset open-back della linea INZONE arriva a 200 euro con driver derivati dalle cuffie da studio MDR-MV1 e un peso record di soli 199 grammi
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 10-11-2004, 13:13   #1
Rigo007
Member
 
L'Avatar di Rigo007
 
Iscritto dal: Oct 2001
Città: Trento
Messaggi: 164
server/client [c++]

Ciao!
Devo realizzare due entità ke si scambiano dati utilizzando il protocollo UDP.
Qlc sa dirmi dove posso trovare qlc di utile (anche magari parti di codice).

Ciao...grazie
Rigo007 è offline   Rispondi citando il messaggio o parte di esso
Old 10-11-2004, 14:38   #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
Prova a dare un'occhiata qui: http://www.linuxgazette.com/node/view/8758
cionci è offline   Rispondi citando il messaggio o parte di esso
Old 11-11-2004, 13:28   #3
Rigo007
Member
 
L'Avatar di Rigo007
 
Iscritto dal: Oct 2001
Città: Trento
Messaggi: 164
interessante...ora ci lavoro dietro un po', sperando di riuscire ad inviare qlc file
Rigo007 è offline   Rispondi citando il messaggio o parte di esso
Old 11-11-2004, 16:06   #4
Rigo007
Member
 
L'Avatar di Rigo007
 
Iscritto dal: Oct 2001
Città: Trento
Messaggi: 164
Ma questi dove hanno imparato a programmare? :-/
Il codice è scritto con i piedi...no comment...
Rigo007 è offline   Rispondi citando il messaggio o parte di esso
Old 11-11-2004, 16:11   #5
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
C'è un secondo post con i sorgenti praticamente rifatti e molto meglio...
cionci è offline   Rispondi citando il messaggio o parte di esso
Old 11-11-2004, 22:35   #6
songoge
Member
 
Iscritto dal: Nov 2001
Messaggi: 206
Ho un problema simile.
Devo realizzare una chat. Quindi due programmi, un client e un server.
La piattaforma che utilizzo è Windows Xp.
Magari conoscete codice per Microsoft Visual Studio 6.0 per le MFC. (Visual c++)

Se conoscete anche un modo per ridurre al minimo il ping perchè la chat dovrà gestire + di 1000 utenti contemporaneamente!

Altra domanda.
Il server girerà su un pc desktop con connessione Adsl 640.
Pensate che riesca a gestire più di 1000 utenti?
Avevo pensato di utilizzare magari più di un server da collegare tra loro per gestire il carico. Come posso fare?

Grazie e scusate se ho fatto troppe domande
songoge è offline   Rispondi citando il messaggio o parte di esso
Old 12-11-2004, 07:48   #7
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
IMHO realizza pure l'interfaccia in MFC, ma gestisci i socket nel modo standard (il codice sopra dovrebbe funzionare anche su Windows, magari con leggeri cambiamenti)...
cionci è offline   Rispondi citando il messaggio o parte di esso
Old 12-11-2004, 13:22   #8
71103
Bannato
 
Iscritto dal: Oct 2004
Città: Roma
Messaggi: 124
Ho sviluppato in passato programmi che lavorano su Tcp/Ip con MFC, e sono rimasto estremamente deluso quando ho scoperto una grave pecca di MFC 4 (non so se abbiano fatto degli aggiustamenti in MFC 7): non è possibile utilizzare i sockets MFC (quindi CAsyncSocket e CSocket) in threads diversi, in nessun modo.
Io avevo la necessità di realizzare threads diversi nel server, che doveva avere la possibilità di gestire più connessioni contemporaneamente (anche il tuo suppongo), quindi non commettere il mio stesso errore, o rimarrai deluso .
Perciò segui il consiglio di cionci: sockets Win32 (che non sono neanche tanto più complicati rispetto a quelli MFC).
71103 è offline   Rispondi citando il messaggio o parte di esso
Old 12-11-2004, 14:48   #9
Rigo007
Member
 
L'Avatar di Rigo007
 
Iscritto dal: Oct 2001
Città: Trento
Messaggi: 164
WinSock....divertiti :-)

Devi stare attento...da linux a win alcune funzioni cambiano nome, altre come la fork() nn ci sono proprio!

Ho trovato qlc tutorial fatto benino, ma nn ho trovato mai nessuno ke abbia sviluppato un programma ke trasmeste file utilizzando l'Udp protocol...nn sarà mica un pioniere?! :-)
credo di no, ma trovare un bel codice già fatto nn sarebbe male! :-P
Rigo007 è offline   Rispondi citando il messaggio o parte di esso
Old 12-11-2004, 14:55   #10
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
La fork che c'entra con il winsock ?
I programmi peer2peer lavorano anche con UDP...
Non è impossibile, ma bisogna farsi il controllo di flusso e il controllo di errore a mano...
Il TFTP, uno dei primi protocolli per il trasferimento di file, lavorava proprio con UDP...
cionci è offline   Rispondi citando il messaggio o parte di esso
Old 12-11-2004, 18:49   #11
songoge
Member
 
Iscritto dal: Nov 2001
Messaggi: 206
In effetti la parte di codice del client e del server la metterò in una dll. Il programma client MFC utilizzerà questa dll.
Quindi pensate che il link di partenza sia utile per me?
songoge è offline   Rispondi citando il messaggio o parte di esso
Old 12-11-2004, 19:32   #12
Fenomeno85
Senior Member
 
L'Avatar di Fenomeno85
 
Iscritto dal: Jun 2002
Città: Provincia De VaRéSe ~ § ~ Lat.: 45° 51' 7" N Long.: 8° 50' 21" E ~§~ Magica Inter ~ § ~ Detto: A Chi Più Amiamo Meno Dire Sappiamo ~ § ~ ~ § ~ Hobby: Divertimento allo Stato Puro ~ § ~ ~ § ~ You Must Go Out ~ § ~
Messaggi: 8897
scusate ma è comodo programmare in MFC?

altra cosa creare un socket in VB ci metti 3 righe in C++ ne escono un pò di +
Per la chat secondo me ci metti molto di meno a programmarla in VB e IMHO meglio usare una connessione TCP.

~§~ Sempre E Solo Lei ~§~
__________________
Meglio essere protagonisti della propria tragedia che spettatori della propria vita
Si dovrebbe pensare più a far bene che a stare bene: e così si finirebbe anche a star meglio.
Non preoccuparti solo di essere migliore dei tuoi contemporanei o dei tuoi predecessori.Cerca solo di essere migliore di te stesso
Fenomeno85 è offline   Rispondi citando il messaggio o parte di esso
Old 12-11-2004, 19:37   #13
songoge
Member
 
Iscritto dal: Nov 2001
Messaggi: 206
E' vero quello che dici, ma poichè mi serve un programma che "giri" molto più velocemente devo usare per forza il c++
Il VB lo usato tempo fa, ma l'eseguibile è molto più lento del corrispondente c++.
Inoltre lo sto facendo per imparare anche cose nuove
songoge è offline   Rispondi citando il messaggio o parte di esso
Old 12-11-2004, 19:38   #14
Fenomeno85
Senior Member
 
L'Avatar di Fenomeno85
 
Iscritto dal: Jun 2002
Città: Provincia De VaRéSe ~ § ~ Lat.: 45° 51' 7" N Long.: 8° 50' 21" E ~§~ Magica Inter ~ § ~ Detto: A Chi Più Amiamo Meno Dire Sappiamo ~ § ~ ~ § ~ Hobby: Divertimento allo Stato Puro ~ § ~ ~ § ~ You Must Go Out ~ § ~
Messaggi: 8897
Quote:
Originariamente inviato da songoge
E' vero quello che dici, ma poichè mi serve un programma che "giri" molto più velocemente devo usare per forza il c++
Il VB lo usato tempo fa, ma l'eseguibile è molto più lento del corrispondente c++.
Inoltre lo sto facendo per imparare anche cose nuove
ma sulla velocità non penso che influenzi ... se è per imparare fai bene

~§~ Sempre E Solo Lei ~§~
__________________
Meglio essere protagonisti della propria tragedia che spettatori della propria vita
Si dovrebbe pensare più a far bene che a stare bene: e così si finirebbe anche a star meglio.
Non preoccuparti solo di essere migliore dei tuoi contemporanei o dei tuoi predecessori.Cerca solo di essere migliore di te stesso
Fenomeno85 è offline   Rispondi citando il messaggio o parte di esso
Old 12-11-2004, 19:45   #15
songoge
Member
 
Iscritto dal: Nov 2001
Messaggi: 206
Per quel che sto facendo ti assicuro che mi serve tutta la velocità possibile!
Mi sto divertendo molto
songoge è offline   Rispondi citando il messaggio o parte di esso
Old 12-11-2004, 22:36   #16
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
Quote:
Originariamente inviato da Fenomeno85
altra cosa creare un socket in VB ci metti 3 righe in C++ ne escono un pò di +
Relativamente...
Prova a fare in VB certe cose che magari in C sono di una certa complessità e poi me lo ritorni a dire qual'è il più comodo
cionci è offline   Rispondi citando il messaggio o parte di esso
Old 13-11-2004, 10:09   #17
Fenomeno85
Senior Member
 
L'Avatar di Fenomeno85
 
Iscritto dal: Jun 2002
Città: Provincia De VaRéSe ~ § ~ Lat.: 45° 51' 7" N Long.: 8° 50' 21" E ~§~ Magica Inter ~ § ~ Detto: A Chi Più Amiamo Meno Dire Sappiamo ~ § ~ ~ § ~ Hobby: Divertimento allo Stato Puro ~ § ~ ~ § ~ You Must Go Out ~ § ~
Messaggi: 8897
Quote:
Originariamente inviato da cionci
Relativamente...
Prova a fare in VB certe cose che magari in C sono di una certa complessità e poi me lo ritorni a dire qual'è il più comodo
questo non lo metto in dubbio ... per una semplice chat la vedo + semplice crearla in vb niente di +

~§~ Sempre E Solo Lei ~§~
__________________
Meglio essere protagonisti della propria tragedia che spettatori della propria vita
Si dovrebbe pensare più a far bene che a stare bene: e così si finirebbe anche a star meglio.
Non preoccuparti solo di essere migliore dei tuoi contemporanei o dei tuoi predecessori.Cerca solo di essere migliore di te stesso
Fenomeno85 è offline   Rispondi citando il messaggio o parte di esso
Old 14-11-2004, 10:19   #18
daniele_dll
Senior Member
 
L'Avatar di daniele_dll
 
Iscritto dal: Jul 2003
Città: Como
Messaggi: 569
beh, fisicamente, per problemi di banda, non credo tu possa teneer 1000 utenti su una adsl

poi dipende che protocollo usi...IRC, DirectConnect, uno tuo...
ad esempio il protocollo di DC è orrendo e consuma un mucchio di banda inutile con quello è già tanto che arrivi a tenere 200\300 utenti su una adsl 640 (con up a 256, ovvio)

per quanto riguarda la velocità ti sconsiglio di farlo in VB, parlo per esperienza, a me non riusciva a gestire + di 700/750 connessioni contemporanee e il codice penso di averlo scritto abbastanza bene.

comunque se scrivi codice "portabile" puoi compilarlo su svariate piattaforme, linux compreso, perché se ti servono MOLTE prestazioni, e ti serve far girare solo quello linux ha tanti fronzoli inutili in meno

poi credo che, scrivendo codice posix standard, usando le cygwin dovresti poter compilare su windows senza problemi, all'eseguibile windows basta che alleghi una libreria che è insieme alle cygwin e basta (il sottosistema posix in pratica)

se ti interessa una guida BEN FATTA (anche se ancora ci stanno lavorando su) cerca GAPIL su google [è in italiano]

inoltre se puoi utilizza pool e non select, pool è decisamente molto più performante (c'è anche epool, ma sono pochi i sistemi che lo supportano, se fai un check per verificaer se esiste o meno è ancora meglio perché riusciresti ad ottenere ancora maggiori prestazioni)

ah un'ultimo cosa, se vuoi un consiglio, non utilizzare un sistema a threads, ma utilizza un sistema asincrono, ovvero non far si che ogni utente venga gestito da un thread, perché 100 utenti = 100 threads, 1000 utenti = 1000 threads, e faresti fuori qualunque hardware di basso-medio livello, invece usando un sistema asincrono riusciresti a ottenere risultati eccellenti (ad esempio un software chiamato verlihub e scritto in C++, utilizzando questo sistema, riesce a gestire + di 6000 utenti [forse di +, ma era finita la banda disponibile])

sciauz
__________________
Ho concluso con successo con: sc92, Bhairava, shark_ita, almus, blacktoffee, drive97, pippo369, simpatiacaserta, Necros81, Edgar83 (ed altri che ho scordato ad aggiungere)! Oltre 120 feedback su ebay
daniele_dll è offline   Rispondi citando il messaggio o parte di esso
Old 14-11-2004, 10:33   #19
Luc@s
Senior Member
 
L'Avatar di Luc@s
 
Iscritto dal: Apr 2002
Città: Vigevano(PV)
Messaggi: 2124
daniele_dll approfondisci ..............
__________________
Gnu/Linux User
Luc@s è offline   Rispondi citando il messaggio o parte di esso
Old 14-11-2004, 11:42   #20
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
Comunque se vuoi fare una cosa che sia veloce anche su Windows IMHO meglio evitare cygwin...
La programmazione socket è praticamente già portabile al 100%...il resto è da vedere...
Comunque è sempre meglio creare un pool di thread (4-5 thread + quello principale che attende le connessioni in ingresso) ed a questo pool di thread assegnare un tot di utenti...
cionci è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


Tastiera gaming MSI GK600 TKL: switch hot-swap, display LCD e tre modalità wireless Tastiera gaming MSI GK600 TKL: switch hot-swap, ...
DJI Osmo Pocket 4: la gimbal camera tascabile cresce e ha nuovi controlli fisici DJI Osmo Pocket 4: la gimbal camera tascabile cr...
Sony INZONE H6 Air: il primo headset open-back di Sony per giocatori Sony INZONE H6 Air: il primo headset open-back d...
Nutanix cambia pelle: dall’iperconvergenza alla piattaforma full stack per cloud ibrido e IA Nutanix cambia pelle: dall’iperconvergenza alla ...
Recensione Xiaomi Pad 8 Pro: potenza bruta e HyperOS 3 per sfidare la fascia alta Recensione Xiaomi Pad 8 Pro: potenza bruta e Hyp...
Il ridimensionamento di OnePlus in Europ...
Il cofondatore di Netflix ha lasciato l'...
ASUS porta in Italia il nuovo Zenbook Du...
Assassin's Creed: Black Flag Resynced, s...
Xbox Game Pass cambierà: tra le n...
I nuovi Surface Pro e Laptop sono vicini...
OnePlus ci riprova con la fascia bassa: ...
La Top 10 delle offerte Amazon del weeke...
XGIMI MoGo 2 Pro a 339€: Google TV con N...
Forum IT & Intelligence 2026: dall'A...
iPhone 16e per la prima volta a meno di ...
Stop Killing Games: Ross Scott convince ...
Annunciata la tuta di volo di Vast che s...
Vast presenta il nuovo Large Docking Ada...
Una denuncia getta ombre sulle batterie ...
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: 14:21.


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