python从子进程中丢失全局列表内容

时间:2014-02-19 05:03:04

标签: python list scope global

我有一个我在子进程中附加的全局列表。同时,调用子进程的函数正在迭代列表。退出子进程时,即使我附加了

,全局列表也是空的
urlsToCheck = list()

def crawler():
    while limit != 0 and urlsToCheck.__len__() > 0:
        curUrl = urlsToCheck.pop(0)
        processLink(curUrl)
        limit -= 1

def processLink(url):
    ...
    for i in validLinks:
        urlsToCheck.append(i)
    ...

1 个答案:

答案 0 :(得分:1)

除非您明确使用共享数据结构,否则不会在进程之间共享变量。

请参阅multiprocessing documentation - Sharing state between processes