Python 使用SQLObject的简单多线程不';行不通
一旦我执行Python 使用SQLObject的简单多线程不';行不通,python,sqlobject,Python,Sqlobject,一旦我执行.getOne(),它就会死机: getOne会不会摔倒,而你却看不到例外?在这种情况下,可以将默认结果指定为参数,也可以将其放在try/except子句中 如果在调试器中运行它会发生什么 这里没有太多信息,因为我们不知道数据库中有什么。不幸的是,问题与SQLObject或Python无关。可能是我的电脑或MySQL服务器。很抱歉问错了大家。“一旦我执行.getOne(),它就会死机。”-没有例外,有一个很长的块。当我在线程外使用它时,一切都正常。但可能是因为它在另一个线程中,所以你没
.getOne()
,它就会死机:
getOne会不会摔倒,而你却看不到例外?在这种情况下,可以将默认结果指定为参数,也可以将其放在try/except子句中 如果在调试器中运行它会发生什么
这里没有太多信息,因为我们不知道数据库中有什么。不幸的是,问题与SQLObject或Python无关。可能是我的电脑或MySQL服务器。很抱歉问错了大家。“一旦我执行.getOne(),它就会死机。”-没有例外,有一个很长的块。当我在线程外使用它时,一切都正常。但可能是因为它在另一个线程中,所以你没有看到异常吗?您还没有给出关于您尝试了什么的详细信息…我不知道为什么,但突然之间,完全相同的代码开始工作。可能是MySQL出了问题(MySQL重启没有帮助,但计算机重启有帮助)。对不起,我问错了:\
from sqlobject import *
import threading
sqlhub.processConnection = connectionForURI('mysql://user:password@localhost:3306/database')
class Player(SQLObject):
name = StringCol(length=64)
last_login = DateTimeCol()
create_date = DateTimeCol(default=DateTimeCol.now)
def act():
result = Player.selectBy(name='Zippo')
player = result.getOne()
print 'You will never see this message in console.'
threading.Thread(target=act).start()