Posted on 2013-03-08 20:18:01 tornado
使用tornado的异步http调用时候,在继承RequestHandler的子类中,可以重载on_connection_close方法。
此方法在对端连接关闭,或者在socket上读写错误的时候被调用,可以让服务器做一些清理。
调用过程大概这样:
首先说明,ioloop没有保证读写出错的时候做什么,以及怎么做。 这些都是由iostream来操作的,因为它就是对ioloop的封装,增加了错误处理、各种情况下的回调、读写缓存等等。
def close(self, exc_info=False):
"""Close this stream.
If ``exc_info`` is true, set the ``error`` attribute to the current
exception from `sys.exc_info()` (or if ``exc_info`` is a tuple,
use that instead of `sys.exc_info`).
"""
if not self.closed():
if exc_info:
if not isinstance(exc_info, tuple):
exc_info = sys.exc_info()
if any(exc_info):
self.error = exc_info[1]
if self._read_until_close:
callback = self._read_callback
self._read_callback = None
self._read_until_close = False
self._run_callback(callback,
self._consume(self._read_buffer_size))
if self._state is not None:
self.io_loop.remove_handler(self.fileno())
self._state = None
self.close_fd()
self._closed = True
self._maybe_run_close_callback()
最后一句,就是self._maybe_run_close_callback(),说明如果定义了on_connection_close函数,就调用它。在这句代 码的前面做了一些例如关闭连接、清除回调、从ioloop中移除回调等等。
Knocked my socks off with knelowdge!
That’s a slick answer to a chlnaelging question http://qnmkwi.com [url=http://gvpmybd.com]gvpmybd[/url] [link=http://jslviu.com]jslviu[/link]
This is a neat sumayrm. Thanks for sharing!
I seahcred a bunch of sites and this was the best.
Real Progesterone Pills Visa No Prior Script
http://buylasixshop.com/ - Lasix
Cialis Per Posta
Приветствуем вас! Можем предложить лучшие прогоны “убийцы” для веб-сайтов вашего конкурента. Всего от 2 тыс руб. - Гарантированный результат. Сайты ваших конкурентов “умрут”. - Максимальное число отрицательных фитбеков. - Собрана специальная база - выжимка максимально “смертельных” площадок из 10 000 000 ресурсов (спамные, порно, вирусы и так далее). Это работает бесперебойно. - Прогон производится сразу с 4-х серверов. - Непрерывный спам вирусных ссылок на официальный емейл. - Выполнение заказа на протяжении 40-240 часов день и ночь. Растянем как угодно по времени. - Прогон с запрещёнными ключевыми словами. Телега: @exrumer Skype: xrumer.pro WhatsApp: +7(977)536-08-36 icq: 5688885 Только Эти!
Приветствуем вас! Готовы выполнить самые лучшие “убийственные” прогоны для интернет-сайтов вашего конкурента. Всего от 2000 р. - Стопроцентный эффект. Интернет-сайты конкурентов “умрут”. - Максимальное число негативных фитбеков. - Собрана специальная база - выжимка самых сильных площадок из 10 млн. интернет-сайтов (порно, вирусные, спам и т.д.). Это действует бесперебойно. - Прогон делаем одновременно с 4 мощных серверов. - Постоянная отправка активационных ссылок на электронную почту. - Можем растянуть по времени как угодно. - Прогоняем с запрещёнными ключевыми фразами. Телега: @exrumer Skype: xrumer.pro WhatsApp: +7(977)536-08-36 icq: 5688885 Только Эти!
вероятностное мышление Социометрия Онлайн