写个小脚本,准备全部用MySQL做数据库,redis一直没好好学,所以不想用。
逻辑是这样的,我这边查寻一个数据,如果这个数据存在就赋值属性,如果不存在,执行任务写入数据库。
然后再次执行查寻数据,写入对象属性。
# 初始化用户的uid,uid可以从用户收入数据库表中读取 def _initialize_uid(self): # 读写的时候需要重新连一下数据库,保证读取的数据的跟新。 uid_info = self.db.selectDb(SEARCH_USER_UID, (self.account,)) # 假如不能读出来,执行用户的收入表跟新数据。 if uid_info: self.uid = uid_info[0][0] else: print(123)
# 写入数据库信息, if get_money_income(self.account)[0]: time.sleep(2)
# 重新执行该方法去读取数据 self._initialize_uid()
假如你的数据库一致保持着链接,发现我采取这种递归的模式更本无法读取到写入后数据的数据库信息。暂时没有什么好的办法。
唯一的解决办法是每次查寻的时候,可以新建一个连接对象,但这样的话,感觉对数据库压力会比较大。
后续我也使用过多线程进行数据库操作,类似生产者与消费者的关系,记得一个写,一个读可以读取到数据库跟新,难道单线程自己写好,自己读取写好的数据无法完成?
这样的话,感觉使用就会带来非常大的麻烦。后续再找找有没有啥解决方法