Click here to Skip to main content
15,925,868 members
Home / Discussions / C / C++ / MFC
   

C / C++ / MFC

 
GeneralRe: Changing registry key Pin
Rage31-Jan-03 5:53
professionalRage31-Jan-03 5:53 
GeneralRe: Changing registry key Pin
xxhimanshu31-Jan-03 19:12
xxhimanshu31-Jan-03 19:12 
GeneralRe: Changing registry key Pin
Abbas_Riazi1-Feb-03 3:36
professionalAbbas_Riazi1-Feb-03 3:36 
GeneralClient/Server advice please! Pin
Rickard Andersson2031-Jan-03 1:52
Rickard Andersson2031-Jan-03 1:52 
GeneralRe: Client/Server advice please! Pin
valikac31-Jan-03 5:51
valikac31-Jan-03 5:51 
GeneralRe: Client/Server advice please! Pin
Rickard Andersson2031-Jan-03 6:47
Rickard Andersson2031-Jan-03 6:47 
GeneralRe: Client/Server advice please! Pin
Rohit  Sinha31-Jan-03 7:19
Rohit  Sinha31-Jan-03 7:19 
GeneralRe: Client/Server advice please! Pin
Moak1-Feb-03 3:04
Moak1-Feb-03 3:04 
Hey Rickard, I do it similar in my chat:

If a client socket gets a disconnect event, it shuts down and then marks itself as dead. One regular server timer will check for dead sockets (in a std::vector or std::list) and remove them from the list. I dont like if objects delete themself on their own, which is possible in C++ of course (but you have to do some locking etc to be thread safe).

A regular timer sounds like a waste... but it doesnt eat much time and for my chat I already needed regular checks, for things like: is client timeout, is client flooding, client needs a welcome etc. ATM I do this checks every second.

So, when the server becomes a message "Rickard greets all" for sending to all clients, it goes through the list and sends it to every client that is not dead (and properly logged in). All dead sockets become removed in regular intervalls and won't polute the socket list for long. You might want to maintain more then one internal list, e.g. one for 'incoming and not logged in crap sockets' and one for 'logged in chat client sockets'. Smile | :)

Hope it helps... hej då, Moak
GeneralRe: Client/Server advice please! Pin
Rickard Andersson201-Feb-03 4:29
Rickard Andersson201-Feb-03 4:29 
GeneralRe: Client/Server advice please! Pin
Moak1-Feb-03 4:49
Moak1-Feb-03 4:49 
GeneralRe: Client/Server advice please! Pin
Rickard Andersson201-Feb-03 7:30
Rickard Andersson201-Feb-03 7:30 
GeneralRe: Client/Server advice please! Pin
Moak1-Feb-03 7:59
Moak1-Feb-03 7:59 
GeneralRe: Client/Server advice please! Pin
Rickard Andersson201-Feb-03 10:58
Rickard Andersson201-Feb-03 10:58 
GeneralRe: Client/Server advice please! Pin
Rickard Andersson201-Feb-03 7:53
Rickard Andersson201-Feb-03 7:53 
GeneralRe: Client/Server advice please! Pin
Moak1-Feb-03 8:03
Moak1-Feb-03 8:03 
GeneralRe: Client/Server advice please! Pin
Rickard Andersson201-Feb-03 10:53
Rickard Andersson201-Feb-03 10:53 
GeneralRe: Client/Server advice please! Pin
Moak1-Feb-03 11:07
Moak1-Feb-03 11:07 
GeneralRe: Client/Server advice please! Pin
valikac31-Jan-03 8:16
valikac31-Jan-03 8:16 
GeneralRe: Client/Server advice please! Pin
Abbas_Riazi1-Feb-03 3:39
professionalAbbas_Riazi1-Feb-03 3:39 
Generalwinsock, wininet Pin
Luke Murray31-Jan-03 1:07
Luke Murray31-Jan-03 1:07 
GeneralRe: winsock, wininet Pin
Rickard Andersson2031-Jan-03 1:31
Rickard Andersson2031-Jan-03 1:31 
GeneralRe: winsock, wininet Pin
Luke Murray31-Jan-03 1:41
Luke Murray31-Jan-03 1:41 
GeneralRSA algorithm Pin
Mahesh Varma31-Jan-03 1:04
Mahesh Varma31-Jan-03 1:04 
GeneralRe: RSA algorithm Pin
Abbas_Riazi31-Jan-03 1:38
professionalAbbas_Riazi31-Jan-03 1:38 
GeneralRe: RSA algorithm Pin
Miroslav Rajcic31-Jan-03 3:40
Miroslav Rajcic31-Jan-03 3:40 

General General    News News    Suggestion Suggestion    Question Question    Bug Bug    Answer Answer    Joke Joke    Praise Praise    Rant Rant    Admin Admin   

Use Ctrl+Left/Right to switch messages, Ctrl+Up/Down to switch threads, Ctrl+Shift+Left/Right to switch pages.