【发布时间】:2011-09-29 23:21:29
【问题描述】:
我需要在 Django 中每隔几分钟填充一次 SQLite 数据库,但我想提供陈旧的数据,直到数据可用于更新数据库。 (即我不想阻止要收集的数据;我可以阻止的唯一时间是数据库上是否有锁,在此期间我别无选择。)
我也不想安装单独的程序或库。
我将如何设置另一个可以在一堆模型上调用 save() 的线程,而不会遇到线程问题?
【问题讨论】:
-
“我也不想安装单独的程序或库” 通常是一项昂贵的政策。芹菜为你做这件事。为什么不直接安装 celery?
-
@S.Lott:因为它将在某人的服务器上,我想尽可能避免在服务器上倾倒东西。只是一个单独的线程是不是有点矫枉过正?
-
@S.Lott:我希望它能够工作,但我不明白为什么我需要一个完整的 库 只是为了创建一个线程。如果你能说服我,我完全赞成,但现在对我来说似乎真的没有必要,特别是因为这是在 Python 中(它似乎包含一个模块,比如,一切)。
-
@S.Lott:
If it was actually simple, you would have done it already.好吧,我实际上对 Python 和 Django 都是新手,所以我没想到会那么难;我只是觉得我不知道该怎么做。我仍然不确定它的 哪个 部分需要库,但是:它是数据库锁吗?是线程本身吗?或者是其他什么让事情复杂化了,我忘记了? -
@AHM:非常感谢您提供的信息,尽管我不确定我是否会走那条路。 :) @S.Lott:您的评论就像告诉“n00b”安装 Eclipse 或 Visual Studio,以便他可以制作他的第一个 Hello, World 程序。拥有一个 IDE 可能会有所帮助,但是 (1) 它是多余的,(2) 人们会认为他将总是需要一个 IDE,(3) 他永远不会知道背后的原因建议。所以如果你不是叫我 n00b,而是告诉我为什么我不应该那样做(也许像 AHM 那样?),那么我可能真的明白你的意思。
标签: python database django multithreading background-thread