我找不到一个好的干净方法来锁定 Django 中的关键部分。我可以使用锁或信号量,但 python 实现仅适用于线程,因此如果生产服务器分叉,那么这些将不会受到尊重。有谁知道一种方法(我现在正在考虑 posix 信号量)来保证跨进程的锁定,或者禁止这种方法来阻止 Django 服务器分叉。
如果你使用RDBMS,你可以使用它的“LOCK”机制。
例如,当一个“SELECT FOR UPDATE”事务锁定一行时,该行的其他“SELECT FOR UPDATE”事务必须等待。
# You can use any Python DB API.
[SQL] BEGIN;
[SQL] SELECT col_name FROM table_name where id = 1 FOR UPDATE;
[Process some python code]
[SQL] COMMIT;
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)