Click here to Skip to main content
15,117,830 members
Please Sign up or sign in to vote.
0.00/5 (No votes)
I wanted two functionalities to be implemented on my udp server application.
1. Creating thread that continuously receives data coming from any client.
2. Creating a thread that continuously sends data on server socket after specific time period and waits for reply from client (handshake mechanism). (I implemented this to make aure that whenever any client goes down, the client does not send back the data and server comes to know that client is down.)
I have created two Sokets on Server side for this purpose.
First Socket is bind()ed to INADDR_ANY.
Second Socket is bind()ed to my Machines IP Address.
All sends and receives from client are done on first socket.
The Handshake mechanism to ensure that the client has not gone down is done on the second socket.
Is this approach correct? Please do let me know, so that I may proceed with my work. Thank you in advance.

1 solution

Usually you let the client do the polling. Let the client send an idle message every x-minutes. If the server hasn't heard from a client for more than x-minutes it may assume that the client is down and termintate its thread and/or free its resources.

This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)

CodeProject, 20 Bay Street, 11th Floor Toronto, Ontario, Canada M5J 2N8 +1 (416) 849-8900