123456789101112131415161718192021222324252627282930 |
- # -*- coding: utf-8 -*-
- """
- celery.concurrency.solo
- ~~~~~~~~~~~~~~~~~~~~~~~
-
- Single-threaded pool implementation.
-
- """
- from __future__ import absolute_import
-
- import os
-
- from .base import BasePool, apply_target
-
- __all__ = ['TaskPool']
-
-
- class TaskPool(BasePool):
- """Solo task pool (blocking, inline, fast)."""
-
- def __init__(self, *args, **kwargs):
- super(TaskPool, self).__init__(*args, **kwargs)
- self.on_apply = apply_target
-
- def _get_info(self):
- return {'max-concurrency': 1,
- 'processes': [os.getpid()],
- 'max-tasks-per-child': None,
- 'put-guarded-by-semaphore': True,
- 'timeouts': ()}
|