За pydoc :
Thread.start()
Запустить активность потока.
Он должен вызываться не более одного раза для объекта потока. Это устраивает для
метод объекта run (), который будет вызван в
отдельный поток управления.
Этот метод вызовет исключение RuntimeException, если вызывается более чем
один раз в том же объекте потока.
Способ думать об объектах python Thread
состоит в том, что они берут некоторый кусок кода python, который написан синхронно (либо в методе run
, либо через аргумент target
), и оборачивают его в код C, который знает, как заставить его работать асинхронно. Прелесть этого в том, что вы можете обращаться с start
как с непрозрачным методом: вам не нужно переопределять его, если вы не переписываете класс в C, но вы будете относиться к run
очень конкретно. Это может быть полезно, если, например, вы хотите проверить логику вашего потока синхронно. Все, что вам нужно, это вызвать t.run()
, и он будет выполняться так же, как и любой другой метод.