python中的简单多线程未按预期工作

python中的简单多线程未按预期工作,python,python-3.x,multithreading,python-multithreading,Python,Python 3.x,Multithreading,Python Multithreading,我设法想出了以下代码,这将允许我两次查询数据文件,同时查询不同的信息。但是,它似乎不起作用。有人能看出我做错了什么吗 print('Start') def getAllTimes(arg1): task1 = arg1 if task1 == 1: textfile = open(logfile, 'r') filetext = textfile.read() textfile.close() matchesBegi

我设法想出了以下代码,这将允许我两次查询数据文件,同时查询不同的信息。但是,它似乎不起作用。有人能看出我做错了什么吗

print('Start')
def getAllTimes(arg1):
    task1 = arg1
    if task1 == 1:
        textfile = open(logfile, 'r')
        filetext = textfile.read()
        textfile.close()
        matchesBegin = beginStr in filetext
        matchesEnd = endStr in filetext
        return(matchesBegin,matchesEnd)
    elif task1 == 2:
        AllTimeStamps = [ x.split(' ')[0][1:-1] for x in open(logfile).readlines() ]
        AllUniqTimeStamps = set(AllTimeStamps)
        return AllUniqTimeStamps
etime = 0
AllTimes = []
for etime in range(1,2):
    AllTimeZ = threading.Thread(target=getAllTimes, args=[etime])
    AllTimes.append(AllTimeZ)
    AllTimeZ.start()
for TheTimes in AllTimes:
    TheTimes.join()
    print TheTimes
print('Done')

在上面的代码运行之后,我想确保我可以查询在函数中创建的任何变量的内容。关于变量,我的意思是:
matchesbeagin、matchesEnd、AllUniqTimestamps

可能的重复肯定不是重复的它是重复的-您的问题归结为询问如何从线程返回值,链接的问题正是关于这一点。