Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/338.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 有没有办法让后台进程在仍然使用您的程序时检查网站?_Python_Asynchronous_Twitter_Tweepy - Fatal编程技术网

Python 有没有办法让后台进程在仍然使用您的程序时检查网站?

Python 有没有办法让后台进程在仍然使用您的程序时检查网站?,python,asynchronous,twitter,tweepy,Python,Asynchronous,Twitter,Tweepy,我正在写一个用GUI控制的twitter机器人,我想自动检查一个网站新页面的更新,如果它不是重复的,那么就发推。我有一个系统,可以检查网站的变化,只有当它不是重复的时候才会发推特。但是我正在寻找一种方法来实现后台进程,在这个进程中,这些代码将在GUI仍在使用的情况下持续运行,例如,我正在使用程序回复推文,而在后台,机器人正在推文更新。我曾考虑过异步,但我似乎无法在这种情况下使用它,有什么想法吗?如果不进行大量计算,可以使用线程启动一个新线程,或者使用子进程或多处理启动一个新进程。Asyncio将

我正在写一个用GUI控制的twitter机器人,我想自动检查一个网站新页面的更新,如果它不是重复的,那么就发推。我有一个系统,可以检查网站的变化,只有当它不是重复的时候才会发推特。但是我正在寻找一种方法来实现后台进程,在这个进程中,这些代码将在GUI仍在使用的情况下持续运行,例如,我正在使用程序回复推文,而在后台,机器人正在推文更新。我曾考虑过异步,但我似乎无法在这种情况下使用它,有什么想法吗?

如果不进行大量计算,可以使用
线程
启动一个新线程,或者使用
子进程
多处理
启动一个新进程。Asyncio将面临与GUI线程争夺CPU时间的问题。线程已工作,谢谢!但是请记住,
线程化
仅在后台任务几乎完全等待IO时才应使用。如果您正在做任何“工作”,GIL将完成它,因此这可能仍然滞后于GUI。您需要一个单独的进程来在后台执行工作。是否有其他方法可以替代为此设计的线程?我觉得在编程中同时运行两个进程是很常见的事情。
多处理
模块包含线程池和进程池,还有一个与
线程
相同的
进程
构造函数,但在另一个进程中运行目标。Asyncio也用于在单个线程上运行多个IO等待,但它有一点学习曲线,并且需要自己的线程。我正在考虑使用它,但我使用的UI与它不太配合,因为我需要任务在后台持续运行,基本上与GUI分离,但仍然连接到程序,UI软件有一个典型的.go(),因此之后的任何内容都不会被查看。
def function_for_the_background_task():
   while True:
       do_something

update_thread = threading.Thread(target=function_for_the_background_task)
update_thread.start()


rest of program