[Python的自由天空] 请问这样是否线程安全?

发信人: SaveTheQueen (STQ), 信区: Python
标 题: 请问这样是否线程安全?
发信站: 水木社区 (Fri Dec 29 01:09:40 2017), 转信

几百个线程从一个公有的proxy_pool的list对象里pop()出一个元素
if len(proxy_pool) > 0:
proxy = proxy_pool.pop()
......
我怀疑虽然先检测len,发现是个非空list才去pop(),但是下一行去pop()的时候,proxy_pool有可能已经被别的线程pop()走了剩余元素,导致这个线程pop()一个空list而出现IndexError?是否可能出现这种情况呢?如果是,应该如何解决呢?
if ...
try ...
...pop()
还加一个try我总感觉有点不是特别好?请教各位指点,谢谢!
--

※ 来源:·水木社区 http://ift.tt/14srz9A: 123.150.182.*]


from 水木社区 电脑技术区十大热门话题 http://ift.tt/2le9Xex
via IFTTT

评论

此博客中的热门博文

荣耀 20 Pro 也想以外型和拍照取胜

小米全面屏电视 Pro 全系列升级到 4K 面板

梅赛德斯奔驰与 NVIDIA 联手欲打造下一代 AI 汽车