def join(self,timeout=None):
        """Join all threads in this group.

        If the optional "timeout" argument is given, give up after that many
        seconds.  This method returns True is the threads were successfully
        joined, False if a timeout occurred.
        """
        if timeout is None:
            for thread in self.__threads:
                thread.join()
        else:
            deadline = _time() + timeout
            for thread in self.__threads:
                delay = deadline - _time()
                if delay <= 0:
                    return False
                if not thread.join(delay):
                    return False
        return True
def join ( self , timeout = None ) : if timeout is None : for thread in self . __threads : thread . join ( ) else : deadline = _time ( ) + timeout for thread in self . __threads : delay = deadline - _time ( ) if delay <= 0 : return False if not thread . join ( delay ) : return False return True
Join all threads in this group.

        If the optional "timeout" argument is given, give up after that many
        seconds.  This method returns True is the threads were successfully
        joined, False if a timeout occurred.