Уведомления

Группа в Telegram: @pythonsu
  • Начало
  • » Network
  • » Периодический пинг без использования потоков [RSS Feed]

#1 Янв. 31, 2012 09:51:02

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

Периодический пинг без использования потоков

В общем, почти все IM-протоколы грешат тем, что надо в определенные промежутки времени слать на сервер прикладные пакеты какого-нибудь ICQ_PING, дабы обе стороны знали, что коннект еще держится.

И тут довольно тупой вопрос - возможно ли реализовать этот бесконечный цикл отсылки пинга без использования потоков, но, разумеется, чтобы кроме пинга можно было слать другие произвольные непериодические пакеты?

Вроде бы это можно как-то через poll/epoll сделать, но как в asyncore замутить посылку по таймауту - я не очень понял.



Отредактировано (Янв. 31, 2012 09:59:33)

Офлайн

#2 Янв. 31, 2012 11:17:25

slav0nic
Команда
От: dp.ua
Зарегистрирован: 2006-05-07
Сообщения: 2260
Репутация: +  41  -
Профиль   Отправить e-mail  

Периодический пинг без использования потоков

http://code.activestate.com/recipes/577808-asyncore-scheduler/
может такое подобие твистедовского CallLater поможет?
можешь ещё читануть http://bugs.python.org/issue1641 , там есть пример через shed

http://twistedmatrix.com/trac/browser/trunk/twisted/words/protocols/oscar.py#L238
глянь как поступают в twisted с KeepAlive

Офлайн

  • Начало
  • » Network
  • » Периодический пинг без использования потоков[RSS Feed]

Board footer

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

Powered by DjangoBB

Lo-Fi Version