Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- from optparse import OptionParser
- import threading
- import xlrd
- import datetime
- import time
- ###############################################################################
- class ReadFileXlsx():
- def __init__(self, xlsxFile):
- self.__xlsx_file = xlsxFile
- def read_file(self):
- wbHandler = xlrd.open_workbook(self.__xlsx_file)
- #time.sleep(3)
- ###############################################################################
- class ReadFileXlsxThread(threading.Thread):
- def __init__(self, xlsxFile):
- threading.Thread.__init__(self)
- self.__file_handler = ReadFileXlsx(xlsxFile)
- def run(self):
- self.__file_handler.read_file()
- ###############################################################################
- def run1(filename, max):
- d1 = datetime.datetime.now()
- for index in range(0, max):
- d2 = datetime.datetime.now()
- handler = ReadFileXlsx(filename)
- handler.read_file()
- d3 = datetime.datetime.now()
- print "run1() - " + str(index) + " - time = " + str(d3-d2)
- d4 = datetime.datetime.now()
- print "run1() - TOTAL time = " + str(d4-d1)
- def run2(filename, max):
- d1 = datetime.datetime.now()
- threads = []
- for index in range(0, max):
- d2 = datetime.datetime.now()
- handler = ReadFileXlsxThread(filename)
- handler.start()
- d3 = datetime.datetime.now()
- print "run2() - " + str(index) + " - time = " + str(d3-d2)
- # Add threads to thread list
- threads.append(handler)
- # Wait for all threads to complete
- for t in threads:
- t.join()
- d4 = datetime.datetime.now()
- print "run2() - TOTAL time = " + str(d4-d1)
- def main():
- parser = OptionParser()
- parser.add_option("-f", "--file", dest = "xlsxfile",
- help = "",
- metavar = "FILE")
- (options, args) = parser.parse_args()
- if not options.xlsxfile:
- print "please type python "
- "ReadFileXlsx.py --file=[xlsxfilename]"
- else:
- run1(options.xlsxfile, 10)
- run2(options.xlsxfile, 10)
- if __name__ == "__main__":
- main()
- >main.py --file=sample.xlsx
- run1() - 0 - time = 0:00:02.489000
- run1() - 1 - time = 0:00:02.272000
- run1() - 2 - time = 0:00:02.516000
- run1() - 3 - time = 0:00:02.259000
- run1() - 4 - time = 0:00:02.310000
- run1() - 5 - time = 0:00:02.265000
- run1() - 6 - time = 0:00:02.285000
- run1() - 7 - time = 0:00:02.322000
- run1() - 8 - time = 0:00:02.254000
- run1() - 9 - time = 0:00:02.377000
- run1() - TOTAL time = 0:00:23.360000
- run2() - 0 - time = 0:00:00
- run2() - 1 - time = 0:00:00
- run2() - 2 - time = 0:00:00
- run2() - 3 - time = 0:00:00.001000
- run2() - 4 - time = 0:00:00.001000
- run2() - 5 - time = 0:00:00.002000
- run2() - 6 - time = 0:00:00.001000
- run2() - 7 - time = 0:00:00.001000
- run2() - 8 - time = 0:00:00.001000
- run2() - 9 - time = 0:00:00.001000
- run2() - TOTAL time = 0:00:44.256000
- wbHandler = xlrd.open_workbook(self.__xlsx_file)
- time.sleep(3)
- >main.py --file=sample.xlsx
- run1() - 0 - time = 0:00:03.001000
- run1() - 1 - time = 0:00:03
- run1() - 2 - time = 0:00:03.001000
- run1() - 3 - time = 0:00:03
- run1() - 4 - time = 0:00:03
- run1() - 5 - time = 0:00:03
- run1() - 6 - time = 0:00:03.001000
- run1() - 7 - time = 0:00:03.001000
- run1() - 8 - time = 0:00:03
- run1() - 9 - time = 0:00:03
- run1() - TOTAL time = 0:00:30.009000
- run2() - 0 - time = 0:00:00
- run2() - 1 - time = 0:00:00
- run2() - 2 - time = 0:00:00
- run2() - 3 - time = 0:00:00
- run2() - 4 - time = 0:00:00
- run2() - 5 - time = 0:00:00.001000
- run2() - 6 - time = 0:00:00
- run2() - 7 - time = 0:00:00
- run2() - 8 - time = 0:00:00
- run2() - 9 - time = 0:00:00
- run2() - TOTAL time = 0:00:03.008000
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement