我正在一个更大的网站上工作,我想让程序的“长时间运行”部分在单独的线程上运行。但是我对如何实现这一点感到有些不知所措,尽管我会问是否有人解决了类似的问题。我想要这样做的原因是因为我向用户发送电子邮件,并且在发送电子邮件之前有很多数据库查找,当这一切发生时,没有必要锁定用户。还有其他一些情况,我想等待一些时间发送电子邮件,以防有更多电子邮件要发送,然后合并它们。
我想到了两种方法来做到这一点:
- 有一个在应用程序状态下启动的线程运行,然后将运行后端处理。这将使我能够将对象直接发送到线程。
- 让一个程序在旁边运行,并通过我数据库中的一个表向它发送数据。