python - python中的简单多线程无法按预期工作
问题描述
我设法想出了以下代码,这将允许我查询一个数据文件两次,同时查询不同的信息。但是,它似乎没有工作。谁能发现我在这里做错了什么?
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')
上面的代码运行后,我想确保我可以查询函数中创建的任何变量的内容。我所说的变量是指: matchesBegin, matchesEnd, AllUniqTimestamps
解决方案
推荐阅读
- matlab - 如何在同一图中绘制多个函数的傅里叶变换
- usb - FTDI Bit-Bang 抖动(FT232R 与 FT232H)
- java - Netty:空闲状态处理程序未显示通道是否空闲
- php - 尝试从 PHP 和 MySQL 将数据发送到 AJAX 中的警报
- c# - 如何在 asp.net core 中接收通知?
- swift - 根据属性存在对数组进行排序
- vb.net - 使用 Roslyn 如何在 Visual Studio 2017 的 Visual Basic 文档中枚举成员
- python - 无法抓取横幅图片
- mysql - jdbc 中的 SQL 语法错误异常
- javascript - 角度路由在延迟加载时无法正常工作