m.b.taylor at bristol.ac.uk
Wed Jul 9 04:25:22 PDT 2008
On Wed, 9 Jul 2008, Luigi Paioro wrote:
> A possible way to overcome this problem is the introduction of a client
> inactivity timeout, something very similar to the usual connection or session
> timeout in the common client/server model. If a client remains inactive for
> more that a specified time, then it is automatically unregistered.
> This is applicable to every client, even if they are not callable, so it is
> a more general solution respect the ping message test.
> What do you think about this proposal?
This kind of timeout-based unregistration may be reasonable behaviour
in some circumstances for a hub, but in other circumstances one can
imagine that clients might want to stay connected to a hub for a
long time without doing anything.
In my opinion it's OK for hub implementations to forcibly unregister
inactive clients (perhaps based on some user configuration for what
length of inactivity should be tolerated) if they choose to.
But I don't think that the standard should mandate that this should
or must happen.
It may be worth having a new MType (samp.hub.disconnect?) which the hub
sends to an application to inform it that it is being forcibly
unregistered and no further communication is welcome. In most cases
(if the client has disappeared in any case) this message will go
unheard by its intended recipient, but there may be other occasions
on which a hub wishes to forcibly disconnect a client.
Mark Taylor Astronomical Programmer Physics, Bristol University, UK
m.b.taylor at bris.ac.uk +44-117-928-8776 http://www.star.bris.ac.uk/~mbt/
More information about the apps-samp