__init__.py 714 B

1234567891011121314151617181920212223242526
  1. # -*- coding: utf-8 -*-
  2. """
  3. celery.concurrency
  4. ~~~~~~~~~~~~~~~~~~
  5. Pool implementation abstract factory, and alias definitions.
  6. """
  7. from __future__ import absolute_import
  8. # Import from kombu directly as it's used
  9. # early in the import stage, where celery.utils loads
  10. # too much (e.g. for eventlet patching)
  11. from kombu.utils import symbol_by_name
  12. ALIASES = {
  13. 'processes': 'celery.concurrency.processes:TaskPool',
  14. 'eventlet': 'celery.concurrency.eventlet:TaskPool',
  15. 'gevent': 'celery.concurrency.gevent:TaskPool',
  16. 'threads': 'celery.concurrency.threads:TaskPool',
  17. 'solo': 'celery.concurrency.solo:TaskPool',
  18. }
  19. def get_implementation(cls):
  20. return symbol_by_name(cls, ALIASES)