06. februar 2003 - 10:50
Der er
13 kommentarer og 1 løsning
WinSock
Til en server skal man jo åbne/oprette eller lig en ny soc hver gang at der kommer en ny client. jeg har noget kode her: f.eks //if client connect int socket[65000]; //Max connections i++; socket[i]= socket(AF_INET, SOCK_STREAM, 0) sådan noget lig, er det sådan at man henter en ny socket, eller er det helt forkert ?? mvh Daniel
Annonceindlæg fra DE-CIX
06. februar 2003 - 11:16
#1
det er den paranormale verden, som er lig med den intergalaktiske cyklus der overlapper atomspaltningen ved en forbrænding af en molykylestruktur nedsmeltning. Derfor er det nødvendigt at læse bogen om fugle og egern.
06. februar 2003 - 11:16
#2
ej, det var bare mig og daniel der sad at legede
06. februar 2003 - 11:20
#3
ser meget rigtigt ud.. især hvis du kører en exit(0);
06. februar 2003 - 12:03
#4
Jeg er ikke helt med. Normalt så fungerer en single-threaded server ved at den: listen på server socket while (connections) { lav accept og create en socket reply to client close socket } og en multi-threade server ved at den: listen på server socket while (connections) { lav accept og create en socket create thread med socket { reply to client close socket } } Ingen af delene kræver et socket[65000] array. Vær iøvrigt opmærksom på at få systemer kan klare så mange åbne sockets !
06. februar 2003 - 14:39
#5
Arne_v >> Hvad for en af de to typer er den mest hyppie at bruge til en server med anvændelse som chat og filsendning ?? Mvh Daniel
06. februar 2003 - 14:44
#6
Det må være den sidste en multi-threaded. Med en single-threaded skal den første client være færdig-ekspederet inden næste client kan start på at blive processet. Chat må per definition skulle laves som en multi-threaded. Fil-sending afhænger af kravene. Hvis der skal kunen være flere samtidige brugere, så skal du også over i multi-threaded der.
06. februar 2003 - 14:49
#7
Hvorfor skriver men "LP" foran når det faktisk bare er HOSTENT og det virker lige så godt uden "LP".. ?? LPHOSTENT lpHostEntry;
06. februar 2003 - 15:02
#8
Der er en vis tradition i Windows verdenen for at prefixe navne med type. Og en LPHOSTENT er vel en pointer til en HOSTENT. Og L'et er et levn fra gamle dage (L=long/far).
06. februar 2003 - 15:03
#9
Er det et krav at man gør det, fordi hvis jeg sætter mig ned til Unix ville jeg ikke skrive LP..har det noget betydning af vigtighed ?
06. februar 2003 - 15:04
#10
06. februar 2003 - 15:06
#11
Nej. LPHOSTENT he; og HOSTENT *he; må være helt ekvivalent. Bemærk at HOSTENT he; ikke er det samme. Men næste alle inkarnerede Win32 programmører bruger den konvention. (jeg har aldrig kunnet se det geniale i den, men ...)
06. februar 2003 - 15:31
#12
hmm ok...underligt....Arne jeg er ikke helt med på den der server i WinSocket..Fordi jeg kan ikke rigtigt se hvordan det skal laves..Jeg har godt nok fået nogle links til nettet, men der manualer er jo mega lange eller, og meget kedeligt og dårligt skrevet...Du lyder som en med hang til Socket, så kender du sikkert også lige det rigtige link ??
06. februar 2003 - 19:02
#14
Kurser inden for grundlæggende programmering