> *Subject:* Re: [twsocket] Pinging multipe hosts > *From:* Ertan Küçüko_lu <ertan.kucuko...@1nar.com.tr> > *To:* "'ICS support mailing'" <twsocket@lists.elists.org> > *Date:* Sat, 12 Mar 2016 19:34:21 +0200 > > I thought, at first, that ping might be a solution. After reading > your post, I better find another way to check if client is > running. More details about subject: > - I will be writing both applications that running on server and > client. > - Client will inform server first time it is running thru a > webservice. > - Client will inform server every minute it is running thru a > webservice. - If it is more than a minute and client still didn't > inform that it is > running, I would like to know that client is really alive, or > busy and couldn't say that it is running. > - If client is really closed, I will do some database operations > on server side.
Look at the sample OverbyteIcsPingTst which illustrates ping using a thread, so your application is not blocked while testing a host. As François says, it's better to test the protocol, in your case by sending your own defined packets back and forth every minute. This is very low overhead. But there is no notification if an open TCP connection is lost, until you try to send more data when it will fail after a timeout. But beware opening a TCP connection to a host that is offline is a effectively a blocking operation and will timeout after about 40 seconds preventing any other new connections during that time. That is when it's better to ping first since it has a controlled timeout of a few seconds so you get a failed response more quickly. I did all this 10 years ago tracking 500 London buses with wifi on parts of their routes, so connections dropping all the time, but had to FTP data to and from them when they were online. All this was controlled from a SQL database with a web application showing which buses were online, last contact, and environmental stuff like failed fans that meant the PC would overheat and die, as dozens did. Angus -- To unsubscribe or change your settings for TWSocket mailing list please goto http://lists.elists.org/cgi-bin/mailman/listinfo/twsocket Visit our website at http://www.overbyte.be