async def _start_new_async_iter(self, exec_unit: ExecutionUnitInfo, async_gen_obj, target_id: str, request: RequestInfo): """Attempt to start a new async generator running. This will check for previous generators for this same variable, and cancel them. """ # Check if a previous iterator exists for this variable. if exec_unit.display_id in self._registered_generators: old_start, old_task = self._registered_generators[ exec_unit.display_id] new_start = now() if new_start > old_start: old_task.cancel() new_task = self._eventloop.create_task( self._run_async_iter(new_start, exec_unit, async_gen_obj, target_id, request)) self._registered_generators[ exec_unit.display_id] = new_start, new_task else: new_start = now() new_task = self._eventloop.create_task( self._run_async_iter(new_start, exec_unit, async_gen_obj, target_id, request)) self._registered_generators[ exec_unit.display_id] = new_start, new_task
def init_metadata(self, parent): """Initialize metadata. Run at the beginning of execution requests. """ # FIXME: `started` is part of ipyparallel # Remove for yapkernel 5.0 return { 'started': now(), }
def init_metadata(self, parent): """Initialize metadata. Run at the beginning of execution requests. """ # FIXME: `started` is part of ipyparallel # Remove for yap_kernel 5.0 return { 'started': now(), }