Форум сайта python.su
Разбираюсь с потоками. В процессе работы определено не более N потоков. При создание новый поток записывается в качестве значения в словарь. Потом при необходимости создания нового потока смотриться есть ли свободные места для нового потока. Если нет то в цикле перебираются ключи словаря и смотряться завершенные потоки. Если поток завершен то он удаляется из словаря. Но блин ругается питн на то что производиться изменение словаря в процессе итерации цикла.
Подскажите решение?
Офлайн
Офлайн
сенкс. мне вот такая мысля пришла:
...
if len(client_base) < max_client:
...
создаем потоки
и записываем их в словарь client_base каждый со своим ключем client_id
....
else:
client_base_old = client_base.copy()
for client_id in client_base_old:
if not client_base[client_id].is Alive():
client_base.pop(client_id)
....
Отредактировано (Сен. 10, 2009 12:09:02)
Офлайн