'A string used for identification purposes only.
It has no semantics. Multiple threads may be given the same name. The
initial name is set by the constructor.'

@property
def name(self):

    assert self.__initialized, 'Thread.__init__()    not    called'
    return self.__name
