Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
View | Details | Raw Unified | Return to bug 476104
Collapse All | Expand All

(-)a/pym/_emerge/Scheduler.py (+15 lines)
Lines 154-159 class Scheduler(PollScheduler): Link Here
154
		self.target_root = settings["EROOT"]
154
		self.target_root = settings["EROOT"]
155
		self.trees = trees
155
		self.trees = trees
156
		self.myopts = myopts
156
		self.myopts = myopts
157
		self.timestamp = time.clock()
157
		self._spinner = spinner
158
		self._spinner = spinner
158
		self._mtimedb = mtimedb
159
		self._mtimedb = mtimedb
159
		self._favorites = favorites
160
		self._favorites = favorites
Lines 1006-1011 class Scheduler(PollScheduler): Link Here
1006
			earlier_sigint_handler = signal.signal(signal.SIGINT, sighandler)
1007
			earlier_sigint_handler = signal.signal(signal.SIGINT, sighandler)
1007
			earlier_sigterm_handler = signal.signal(signal.SIGTERM, sighandler)
1008
			earlier_sigterm_handler = signal.signal(signal.SIGTERM, sighandler)
1008
1009
1010
			# handles SIGCONT when working with --jobs
1011
			# this prevents schedule_tasks from rescheduling too
1012
			# early after SIGCONT
1013
			# this should delay rescheduling by about >5 seconds
1014
			def  sigcont_handler(self):
1015
				if self._jobs and self._max_load is not None:
1016
					self.timestamp = time.clock() + 5.0
1017
			
1009
			try:
1018
			try:
1010
				rval = self._merge()
1019
				rval = self._merge()
1011
			finally:
1020
			finally:
Lines 1542-1547 class Scheduler(PollScheduler): Link Here
1542
	def _schedule_tasks(self):
1551
	def _schedule_tasks(self):
1543
1552
1544
		while True:
1553
		while True:
1554
			# Sleep if timestamp is 'in future', this prevents
1555
			# scheduler to reschedule after SIGCONT signal
1556
			# signal handler should set this to 'near future'
1557
			if self._jobs and self._max_load is not None:
1558
				while (self.timestamp > time.clock()):
1559
					time.sleep(1)
1545
1560
1546
			state_change = 0
1561
			state_change = 0
1547
1562

Return to bug 476104