Я более или менее знаю, как использовать select() для выбора списка сокетов и возвращать только те, которые готовы что-то читать/писать. Проект, над которым я сейчас работаю, имеет класс под названием "пользователь". Каждый "пользовательский" объект содержит свой собственный сокет. То, что я хотел бы сделать, это передать список пользователей select() и вернуть список только тех пользователей, где user.socket готов к чтению/записи. Любые мысли о том, с чего начать?
Изменить: Изменен переключатель(), чтобы выбрать(). Мне нужно исправлять лучше.
У вас должен быть класс User
, реализующий метод fileno(self)
, который возвращает self.thesocket.fileno()
- способ сделать select
работать с вашими собственными классами (сокеты только для окон, произвольные файлы в Unix-подобных системах). Не уверен, что мне кажется switch
- не признайте его как стандартную библиотеку (или встроенную) концепцию Python...?
select
?