gpt4 book ai didi

python - 有没有一种方法可以在python中对dict执行测试和设置操作?

转载 作者:行者123 更新时间:2023-12-03 13:12:21 25 4
gpt4 key购买 nike

我有一个多线程应用程序,在其中我需要使用全局指令来记住和处理请求。

问题是,我不应该两次执行相同的请求,因此我需要使用字典才能测试 key 是否存在。如果不是,请插入它,如果是,则报告错误。

所有代码都在python中运行,因此GIL不应该相关。

在python中可行吗?

在这里锁定将起作用,但是我试图找到一种更自然的方法来解决它。

最佳答案

您当然可以创建一个字典并在线程之间共享它,但是您应该使用锁保护对字典的每次访问(无论是读取还是写入)。

Here lock would work but I am trying to find a more natural way to solve it.



同步原语(例如锁)的使用是实现涉及并发性的可靠体系结构的自然方法。

话虽如此,可以在各个级别上确保不重复两次发出某个请求。如果使用上述字典进行操作,则需要在执行请求之前插入标识符。伪代码:
with lock.acquire():
if url in d:
return # do not perform request
d.[url] = True

perform_request(url)

如果请求失败,您可能想要再次从dict中删除 key (当然,不是没有获得锁)。

关于python - 有没有一种方法可以在python中对dict执行测试和设置操作?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28412522/

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