title: python multiprocessing pool assign object to worker
body: <p>I have some objects need to be processed. I wonder if there is way to assign work (process) to object based on unique key.<br>
  The first time when the code see object it should be randomly assigned a worker, but if the object appear again it should be assigned to the worker which processes the object before. Thank you <br></p>
  
  <p>for example:<br>
  worker A,B,C  |   first bunch objects 1,2,3,4   second bunch objects 1,3<br>
  first bunch objects:<br>
  worker A &lt;--- 1,3<br>
  worker B &lt;--- 2<br>
  worker C &lt;--- 4<br>
  second bunch objects:<br>
  worker A &lt;--- 1,3<br>
  worker B &lt;--- <br>
  worker C &lt;--- <br></p>