Уведомления

Группа в Telegram: @pythonsu

#1 Июнь 28, 2010 18:11:31

yurtaev
От:
Зарегистрирован: 2009-11-17
Сообщения: 32
Репутация: +  0  -
Профиль   Отправить e-mail  

Передача данных в нужные thread'ы зная имя потока

Возникла задача передавать данные в нужный поток. Каждый созданный поток имеет уникальное известное имя. Возможно ли это сделать и как правильнее это реализовать?



Офлайн

#2 Июнь 28, 2010 18:16:25

o7412369815963
От:
Зарегистрирован: 2009-06-17
Сообщения: 1986
Репутация: +  32  -
Профиль   Отправить e-mail  

Передача данных в нужные thread'ы зная имя потока

в главном потоке хранить список дочерних потоков, ходить по этому списку и передавать данные

Офлайн

#3 Июнь 28, 2010 18:23:08

ZZZ
От: Москва
Зарегистрирован: 2008-04-03
Сообщения: 2161
Репутация: +  26  -
Профиль   Адрес электронной почты  

Передача данных в нужные thread'ы зная имя потока

ИМХО, dict логичнее. Просто словарь имён потоков к потокам.



Офлайн

#4 Июнь 28, 2010 18:25:18

bw
От:
Зарегистрирован: 2007-09-26
Сообщения: 938
Репутация: +  20  -
Профиль   Адрес электронной почты  

Передача данных в нужные thread'ы зная имя потока

Queue? Только идентификаторы/имена потоков здесь не причём.

p.s. Не может быть такого понятия как хранить данные в потоке, данные хранятся в памяти, а в случае многопоточной модели (один процесс) все потоки разделяют одно и то же адресное пространство. Остаётся только решить проблему одновременного доступа к участку памяти (я предлагаю посмотреть Queue для этого).

..bw



Отредактировано (Июнь 28, 2010 18:28:56)

Офлайн

#5 Июнь 28, 2010 18:25:53

yurtaev
От:
Зарегистрирован: 2009-11-17
Сообщения: 32
Репутация: +  0  -
Профиль   Отправить e-mail  

Передача данных в нужные thread'ы зная имя потока

o7412369815963
в главном потоке хранить список дочерних потоков, ходить по этому списку и передавать данные
Для меня как раз и вопрос как передать данный в поток нужный… Извиняюсь если уж совсем что то глупое спрашиваю.



Офлайн

#6 Июнь 28, 2010 18:28:00

yurtaev
От:
Зарегистрирован: 2009-11-17
Сообщения: 32
Репутация: +  0  -
Профиль   Отправить e-mail  

Передача данных в нужные thread'ы зная имя потока

bw
Queue? Только идентификаторы/имена потоков здесь не причём.

..bw
Очереди как я понимаю не подходят, потому как допустим 20 поток начнут следить за очередью и будут брать данные не предназначенные для него.



Офлайн

#7 Июнь 28, 2010 18:30:35

bw
От:
Зарегистрирован: 2007-09-26
Сообщения: 938
Репутация: +  20  -
Профиль   Адрес электронной почты  

Передача данных в нужные thread'ы зная имя потока

Это задача для подготовительной группы детского сада.
Сделай 20 очередей, кто мешает. Пусть каждый поток работает только со своей.

..bw



Офлайн

#8 Июнь 28, 2010 18:31:31

yurtaev
От:
Зарегистрирован: 2009-11-17
Сообщения: 32
Репутация: +  0  -
Профиль   Отправить e-mail  

Передача данных в нужные thread'ы зная имя потока

Если кратко то в каждом потоке живет клиент мессенджера (имеет своё имя), необходимо отправлять сообщения от нужного имени…



Офлайн

#9 Июнь 28, 2010 18:33:11

yurtaev
От:
Зарегистрирован: 2009-11-17
Сообщения: 32
Репутация: +  0  -
Профиль   Отправить e-mail  

Передача данных в нужные thread'ы зная имя потока

bw
Это задача для подготовительной группы детского сада.
Сделай 20 очередей, кто мешает. Пусть каждый поток работает только со своей.

..bw
Потоков может быть в один момент 20, а через минуту 100…



Офлайн

#10 Июнь 28, 2010 18:58:50

bw
От:
Зарегистрирован: 2007-09-26
Сообщения: 938
Репутация: +  20  -
Профиль   Адрес электронной почты  

Передача данных в нужные thread'ы зная имя потока

Я не вижу в этом проблемы. Альтернативный вариант, это искать платформозависимые (ОСь) решения, но тут я ничего подсказать не могу. А вообще, я настоятельно не рекомендую увлекаться потоками в Python, особенно если они выполняют ресурсоёмкие вычисления (заметно утилизируют проц.). Хотя эта рекомендация распространяется на все случаи. Речь про системные потоки, не микронити (concurrence, greenlet, stackless).

..bw



Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version