code: def close(self):
  		
  		with self.lock:
  			if self.closed:
  				return
  			self.waitqueue.put(StopIteration)
  			self.closed = True
docs: Signal that the executor will no longer accept job submission.
  		
  		Worker threads/processes are now allowed to terminate after all
  		jobs have been are completed.  Without a call to close(), they will
  		stay around forever waiting for more jobs to come.