то они расправляются нагрузку на все ядра процессора, ведь написано что потоки принадлежат процессу, а один процесс нагружает одно ядро. Но у меня получается что потоки которые принадлежат одному процессу нагружают все ядра, в чем причина?
```
import threading
def test_sleep():
while True:
pass
if __name__ == '__main__':
count_tgread = 5
list_thread = []
for x in range(count_tgread):
test_thread1 = threading.Thread(target=test_sleep,daemon=True)
list_thread.append(test_thread1)
test_thread1.start()
for th in list_thread:
th.join()
```
> а один процесс нагружает одно ядро. ШТА? откуда ты взял эту чушь?
Каким ядром что выполнять решает ось, питон никаких гарантий насчет этого не дает
Питон только 1 потоку даёт выполнятся в 1 момент времени
Как же вы заебали со своим GIL и одиним потоком.
А что такого? Просто потоки в питоне это асинхрон на самом деле
Книга "Секреты Python 59 рекомендаций по написанию эффективного кода"
А что нетак разве?
А при чем тут потоки
Ты прочитал текст и совершенно ни черта не понял что в нем написано.
Там мультипроцесс а не тхридинг, они работают по разному
В том что потоки нагружают все ядра процессора, хотя они запущенны в одном процессе.
На твоем скрине ни слова про потоки
Могут нагружать, могут не нагружать.
И опять же это ось решает кто что будет нагружать, не питон
Да, процессы могут нагружать все ядра, но почему потоки нагружают их ?
Минимальной единицей диспетчеризации является поток. Как распределять процессорное время между потоками решает ОС.
Потому что я запускаю потоки на одно процессе. А один процесс должен задействовать одно реальное ядро, а не все сразу.
Потому что исполняются процессором потоки а не процессы
Это ось решает что задействовать, кто тебе сказал что процесс должен?
Знаешь, @Tishka17, иногда мне кажется что он тут сидит и троллит окружающих.
А разве не 1 поток выполняет питоновский код в 1 момент времени?
Смотря что ты понимаешь под питоновским кодом. Вот у тебя питоновский код вызывает системный вызов. Будут другие потоки работать?
GIL можно отпустить, например на ожидании сокета или сисколах почти вся стандартная библиотека так и делает
ой, извините, я не хотел...
Ну это то и так понятно
Нет, это как раз таки не понятно
Киньте где почитать про это
https://asvetlov.blogspot.com/2011/07/gil.html
Обсуждают сегодня