I'm trying to loop every second between two datetimes and call a function passing in the current datetime value. I want to split the workload so it doesn't take as long. The 'get_reading' function raises a KeyError if it cannot get a reading with the datetime passed. When I run this, it still produces the error. What am I doing wrong?
sdatetime = datetime.datetime(fromYear, fromMonth, fromDay, fromHour, fromMinute, fromSecond) # start date
edatetime = datetime.datetime(upToYear, upToMonth, upToDay, upToHour, upToMinute, upToSecond) # end date
procs = []
proc = Process(target=get_reading) # instantiating without any argument
procs.append(proc)
proc.start()
while sdatetime <= edatetime:
print ('Doing something at', sdatetime)
try:
proc = Process(target=get_reading, args=(sdatetime,))
procs.append(proc)
proc.start()
# complete the processes
for proc in procs:
proc.join()
except KeyError as e:
#Do nothing
pass
sdatetime += timedelta(seconds=1)
与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…