说我需要发送电子邮件到自己,当有新的评论。
我不希望阻止web.py呈现HTML到浏览器。
和线程似乎并不在这里工作。
class comment:
def POST(self):
...
sender = Thread(target=_sendmail,args=('New Comment',msg))
sender.start()
referer = web.ctx.get('HTTP_REFERER', 'http://www.domain.com')
raise web.SeeOther(referer)
使用线程当问题是,一旦POST函数执行完毕..其中的发送者是freezed..usually发件人没有完成其工作。 我当然不希望使用sender.join()等待发送结束。
我觉得uwsgi没有任何与此..
但我看到了一个角度解释这一现象uwsgi暂停web.py app.when没有request.or请求完成。
web.py的提供所谓的方法@background .. http://webpy.org/cookbook/background
但它似乎有一定的problems.it不清空threaddb字典。
并且将一个参数添加到如URL http://domain.com:8080/?_t=3080772748这是丑陋的。
是否有更好的解决办法? 同时发送服务请求的url像往常一样的电子邮件。