eurasia异步访问数据库

问题

老光 yaoguangming@cq.chinatelecom.com.cn 通过“googlegroups.com”
发件人当地时间 发送时间 15:54 (GMT+08:00)。发送地当前时间:下午4:46。 ✆
发送至     eurasia-users@googlegroups.com
主题      [eurasia-users] 老大,eurasia的协程,能解决异步访问数据库么?

比如访问sqlite3, mysql, pgsql?

支持 PostgreeSQ

沈崴 wileishn@gmail.com
发件人当地时间 发送时间 15:02 (GMT-07:00)。发送地当前时间:上午1:47。 ✆
发送至     eurasia-users <eurasia-users@googlegroups.com>

在程序前面加上如下代码即可支持 PostgreeSQL:

Toggle line numbers
   1 from eurasia import core
   2 from psycopg2 import extensions
   3 
   4 def wait_callback(conn, timeout=-1):
   5    file = core.file(conn.fileno())
   6    while 1:
   7        state = conn.poll()
   8        if state == extensions.POLL_OK:
   9            break
  10        elif state == extensions.POLL_READ:
  11            file.r_wait(timeout)
  12        elif state == extensions.POLL_WRITE:
  13            file.w_wait(timeout)
  14        else:
  15            raise psycopg2.OperationalError(
  16                'Bad result from poll: %r' % state)
  17 
  18 extensions.set_wait_callback(wait_callback)


反馈

创建 by -- ZoomQuiet [2011-09-27 08:48:41]

MiscItems/2011-09-27 (last edited 2011-09-27 08:48:39 by ZoomQuiet)