Пример #1
0
	def __init__(self, target, link, name, args, kwargs):
		self.kind = type(self)
		self.pid = os.getpid()
		self.name = name
		if not self.name:
			self.name = "%s-%s" % (type(self).__name__, BaseProcess._next_index)
		self._index = BaseProcess._next_index
		BaseProcess._next_index += 1
		self._linked = []
		self._handlers = []
		if link is not None:
			self._linked.append(link)
		self._queue = self._get_manager().Queue()
		self._error_dict = self._get_manager().dict({'error':None})
		self._exit_filter = pattern.gen_filter((Exit,))
		self.receive = Receiver(self._handlers)
		self._init_default_handlers()
		self._target = target
		self._args = args
		self._kwargs = kwargs
		self._finished = self._get_manager().Event()
Пример #2
0
	def __init__(self, match):
		self.matches = gen_filter(match)
Пример #3
0
	def _add_receiver(self, match, handler):
		assert handler is not None
		self._handlers.append((pattern.gen_filter(match), handler))
Пример #4
0
	def _init_default_handlers(self):
		self._default_handlers = [
			(pattern.gen_filter((Exit, Process)), self._exit_handler)
		]