VultureChecker/VultureCheckerService.py

changeset 51
cf5c3ddc1de3
parent 49
7b55dc5d09d2
child 53
4eb2ec8fff7c
equal deleted inserted replaced
50:ae07d4efb120 51:cf5c3ddc1de3
55 @rtype (tuple of dict) 55 @rtype (tuple of dict)
56 """ 56 """
57 return __analyze(file, text) 57 return __analyze(file, text)
58 58
59 59
60 def batchVultureCheck(argumentsList, send, fx, cancelled): 60 def batchVultureCheck(argumentsList, send, fx, cancelled, maxProcesses=0):
61 """ 61 """
62 Module function to analyze a batch of files. 62 Module function to analyze a batch of files.
63 63
64 @param argumentsList list of arguments tuples as given for vultureCheck 64 @param argumentsList list of arguments tuples as given for vultureCheck
65 @type list 65 @type list
67 @type function 67 @type function
68 @param fx registered service name 68 @param fx registered service name
69 @type str 69 @type str
70 @param cancelled reference to function checking for a cancellation 70 @param cancelled reference to function checking for a cancellation
71 @type function 71 @type function
72 """ 72 @param maxProcesses number of processes to be used
73 try: 73 @type int
74 NumberOfProcesses = multiprocessing.cpu_count() 74 """
75 if NumberOfProcesses >= 1: 75 if maxProcesses == 0:
76 NumberOfProcesses -= 1 76 # determine based on CPU count
77 except NotImplementedError: 77 try:
78 NumberOfProcesses = 1 78 NumberOfProcesses = multiprocessing.cpu_count()
79 if NumberOfProcesses >= 1:
80 NumberOfProcesses -= 1
81 except NotImplementedError:
82 NumberOfProcesses = 1
83 else:
84 NumberOfProcesses = maxProcesses
79 85
80 # Create queues 86 # Create queues
81 taskQueue = multiprocessing.Queue() 87 taskQueue = multiprocessing.Queue()
82 doneQueue = multiprocessing.Queue() 88 doneQueue = multiprocessing.Queue()
83 89

eric ide

mercurial