gpt4 book ai didi

python线程: first approaching

转载 作者:太空宇宙 更新时间:2023-11-03 14:26:55 29 4
gpt4 key购买 nike

我是Python线程的新手,作为我写的第一个任务:

from twitterHandler import Twitter_User
from text_analyzer import text_analyzer
import threading

if __name__=='__main__':
usersIDS = {'user1':24503301,'user2':7375922343546478338,'user3':2144265434,'user4':50090727}
threads = {}

def get_data(user_id):
'''get the most common words used by twitter user un his text tweet and save it in a file object'''
...

for user_name, user_id in usersIDS.items():
t = threading.Thread(target=get_data,args=(user_id,))
threads[user_name] = t
print('Starting to get data for: {}'.format(user_name)
t.start()


for name,t in threads.items():
t.join()
print('Process for {} Stopped'.format(name))

代码有效,但我想知道这是否是线程的典型用例,或者我只是可以做类似的事情。

for user_id in usersIDS.values():
get_data(user_id)
...

换句话说,多线程是解决我的问题的正确选择吗?非常感谢

最佳答案

是的,在我看来这是很好的方法并且很常见。线程用于以下情况:

  • 异步操作 - 当某个进程不依赖于另一个进程的输出时
  • 可以并行化的进程 - 例如对图像的不同部分进行过滤
  • 在后台运行的操作

我认为你的案例可以分为第一组和第二组。每个人的对象分析不依赖于其他人的分析的输出。但是,如果您拥有大量用户和单词数据,则可能会给您的计算机带来问题,因为它必须管理每个线程的创建和销毁。不管怎样,使用或不使用线程是个人决定。

关于python线程: first approaching,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47563556/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com