summaryrefslogtreecommitdiffstats
path: root/pym/_emerge/TaskScheduler.py
diff options
context:
space:
mode:
authorZac Medico <zmedico@gentoo.org>2012-05-10 23:32:26 -0700
committerZac Medico <zmedico@gentoo.org>2012-05-10 23:54:29 -0700
commit5228eb4ce60765cd421a5e363e51a71626739267 (patch)
treea6b97e25b48e73c290269f3e976e84be98acc922 /pym/_emerge/TaskScheduler.py
parentb6ef0aedb1b1b7c6fd4ab2d8d38369724ec6c383 (diff)
downloadportage-5228eb4ce60765cd421a5e363e51a71626739267.tar.gz
portage-5228eb4ce60765cd421a5e363e51a71626739267.tar.bz2
portage-5228eb4ce60765cd421a5e363e51a71626739267.zip
PollScheduler: use local EventLoop (thread safe)
For API consumers, this makes the doebuild() function compatible with threads, avoiding a ValueError raised by the signal module, as reported at http://bugs.sabayon.org/show_bug.cgi?id=3305. Classes derived from PollScheduler still use the signal module when possible.
Diffstat (limited to 'pym/_emerge/TaskScheduler.py')
-rw-r--r--pym/_emerge/TaskScheduler.py6
1 files changed, 3 insertions, 3 deletions
diff --git a/pym/_emerge/TaskScheduler.py b/pym/_emerge/TaskScheduler.py
index 71ac80f14..583bfe323 100644
--- a/pym/_emerge/TaskScheduler.py
+++ b/pym/_emerge/TaskScheduler.py
@@ -1,4 +1,4 @@
-# Copyright 1999-2009 Gentoo Foundation
+# Copyright 1999-2012 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
from _emerge.QueueScheduler import QueueScheduler
@@ -11,9 +11,9 @@ class TaskScheduler(object):
add tasks and call run(). The run() method returns when no tasks remain.
"""
- def __init__(self, max_jobs=None, max_load=None):
+ def __init__(self, main=True, max_jobs=None, max_load=None):
self._queue = SequentialTaskQueue(max_jobs=max_jobs)
- self._scheduler = QueueScheduler(
+ self._scheduler = QueueScheduler(main=main,
max_jobs=max_jobs, max_load=max_load)
self.sched_iface = self._scheduler.sched_iface
self.run = self._scheduler.run