'Called whith the results of select.select. Note that all r,w,x is a subset of the values
provided by select_fds.'

def on_select(self, r, w, x):

    for fd in set(((r + w) + x)):
        self._on_socket_select(fd)
    if ((time.time() - self.last_prune) > 3600):
        self.prune_old_clients()
        self.last_prune = time.time()
