Nice work! I will send you the prize money.
Question:
You create a separate dict for each thread:
results.append({})
And you also lock this dict for every write:
lock.acquire()
if operation not in self.stats:
self.stats[operation] = 1
else:
self.stats[operation] += 1
lock.release()
Is this required since the dict is still part of the results list? I do not know, so this is a genuine question.
My solution is a bit different in that regard and also yields faster times, I will be submitting a tutorial soon.
Yeah, I don't think that lock is necessary. I used it because I thought since they are all part of a larger array I should use it to be safe, but I think it would be just as safe without. Nice catch!
Downvoting a post can decrease pending rewards and make it less visible. Common reasons:
Submit