0

据我所知,地狱,经验丰富,不可能django为线程共享数据库连接。

我四处搜索并找到了解决此问题的两种方法:

  1. 直接使用相关的 DBMS 驱动程序使用直接SQL连接。
  2. 使用sqlalchmeny及其会话轮询的东西。

真的没有别的办法了吗?是不是可以要求django为线程创建新连接(听起来对我来说简单而有用!)

谢谢。

4

1 回答 1

1

DB的线程安全问题与连接无关;当两个线程尝试同时更改同一条数据时,甚至一个线程尝试写入而另一个线程尝试读取。为了防止这种情况,您只需要在您的一个线程需要对其执行某些操作时锁定该表。使用 Django 1.4+ 的一种快速简便的方法是使用select_for_update,它将锁定表,直到您执行update操作。

于 2012-08-20T14:20:58.790 回答