diff -r 47134672d506 Lib/threading.py --- a/Lib/threading.py Wed Nov 02 09:47:06 2011 +0000 +++ b/Lib/threading.py Sun Nov 06 23:38:33 2011 +0100 @@ -159,8 +159,7 @@ self._target = target self._args = args self._kwargs = kwargs - if name: - self._thread.setName(str(name)) + self._thread.setName(str(name or _newname())) def _create_thread(self): return _newFunctionThread(self.__bootstrap, ()) @@ -267,6 +266,13 @@ def enumerate(): return _threads.values() +# Helper to generate new thread names +_counter = 0 +def _newname(template="Thread-%d"): + global _counter + _counter = _counter + 1 + return template % _counter + from thread import stack_size