|
4 | 4 |
|
5 | 5 | import hashlib
|
6 | 6 | import multiprocessing
|
7 |
| -import multiprocessing.managers |
8 | 7 | import os
|
9 | 8 | import random
|
10 | 9 | import shutil
|
@@ -353,37 +352,11 @@ def __len__(self):
|
353 | 352 | raise NotImplementedError
|
354 | 353 |
|
355 | 354 |
|
356 |
| -class HolderManager(multiprocessing.managers.BaseManager): |
357 |
| - """Custom manager to share a Holder object.""" |
358 |
| - pass |
359 |
| - |
360 |
| - |
361 |
| -class Holder(object): |
362 |
| - """Object to encapsulate a Sequence. |
363 |
| -
|
364 |
| - This allows the Sequence to be shared across multiple workers. |
365 |
| -
|
366 |
| - # Arguments |
367 |
| - seq: Sequence object to be shared. |
368 |
| - """ |
369 |
| - def __init__(self, seq): |
370 |
| - self.seq = seq |
371 |
| - |
372 |
| - def __getitem__(self, idx): |
373 |
| - return self.seq[idx] |
374 |
| - |
375 |
| - def __len__(self): |
376 |
| - return len(self.seq) |
377 |
| - |
378 |
| -# Register the Holder class using the ListProxy (allows __len__ and __getitem__) |
379 |
| -HolderManager.register('Holder', Holder, multiprocessing.managers.ListProxy) |
380 |
| - |
381 |
| - |
382 | 355 | def get_index(ds, i):
|
383 | 356 | """Quick fix for Python2, otherwise, it cannot be pickled.
|
384 | 357 |
|
385 | 358 | # Arguments
|
386 |
| - ds: a Holder or Sequence object |
| 359 | + ds: a Sequence object |
387 | 360 | i: index
|
388 | 361 |
|
389 | 362 | # Returns
|
@@ -467,9 +440,7 @@ class OrderedEnqueuer(SequenceEnqueuer):
|
467 | 440 | def __init__(self, sequence,
|
468 | 441 | use_multiprocessing=False,
|
469 | 442 | scheduling='sequential'):
|
470 |
| - self.manager = HolderManager() |
471 |
| - self.manager.start() |
472 |
| - self.sequence = self.manager.Holder(sequence) |
| 443 | + self.sequence = sequence |
473 | 444 | self.use_multiprocessing = use_multiprocessing
|
474 | 445 | self.scheduling = scheduling
|
475 | 446 | self.workers = 0
|
@@ -546,7 +517,6 @@ def stop(self, timeout=None):
|
546 | 517 | self.executor.close()
|
547 | 518 | self.executor.join()
|
548 | 519 | self.run_thread.join(timeout)
|
549 |
| - self.manager.shutdown() |
550 | 520 |
|
551 | 521 |
|
552 | 522 | class GeneratorEnqueuer(SequenceEnqueuer):
|
|
0 commit comments