我正在使用Praw(一个API包装器)制作一个reddit bot。我正在监控并回复评论和帖子。 Praw有"溪流"新评论和新帖子,以便我不必处理诸如确保我不会两次回复同一帖子之类的内容。这是通过for submission in subreddit.stream.submissions():
和for comment in subreddit.stream.comments():
完成的。这两个都会无休止地循环,就像创建两个while(true)循环一样。同时监控两个流的最佳方法是什么?如果我应该使用线程,两个线程是否能够访问相同的变量?
对于好奇:这是我的代码。 https://github.com/kenblu24/procss-bot
答案 0 :(得分:1)
通常是的,线程能够访问整个进程的内存。这是一种在编程语言中保持一致的功能。
虽然Python中的多线程因GIL而受到严重限制。
如果您可以容忍稍微丑陋的代码,您可以尝试在while True
循环中依次处理提交中的一个元素,一个来自注释等。