В чем разница
с twisted.internet.threads
, Twisted будет управлять нитку и пул потоков для вас. Это снижает нагрузку на разработчиков и позволяет разработчикам больше сосредоточиться на бизнес-логике вместо того, чтобы иметь дело с особенностями потокового кода. Если вы сами import thread
, вам нужно управлять потоками, получать результаты из потоков, обеспечивать синхронизацию результатов, следить за тем, чтобы слишком много потоков не запускалось сразу, запускать обратный вызов после завершения потоков и т. Д.
Какая вещь на самом деле витая?
Это зависит от того, о чем «вещь» вы говорите. Можете быть более конкретными? Twisted имеет различные функции потоков, которые вы можете использовать, и каждый из них может несколько отличаться друг от друга.
И безопасно ли использовать витые нити.
Это абсолютно безопасно! Я бы сказал, что это безопаснее, чем управлять потоками. Взгляните на все функции, которые предоставляет поток Twisted, а затем подумайте, нужно ли вам самому писать этот код. Если вы когда-либо работали с потоками, вы узнаете, что все начинается достаточно просто, но по мере роста вашего приложения и если вы не принимаете правильных решений о потоках, ваше приложение может стать очень сложным и запутанным. В общем, Twisted будет обрабатывать потоки единообразным образом и таким образом, чтобы разработчики ожидали, что приложение, работающее с хорошо выполненными потоками, будет вести себя.
Ссылки