def AsyncPull(self, op_name, pull_data_cb): assert self.status_ is SessionStatus.RUNNING pull_job_name = self.inter_user_job_info.output_or_var_op_name2pull_job_name[ op_name] self.LaunchJob( job_instance_util.MakePullJobInstance(pull_job_name, op_name, pull_data_cb))
def _run_pull_jobs(self, user_job_name): output_futures = {} for ( output_name, pull_job_name, ) in self.inter_user_job_info_.output_or_var_op_name2pull_job_name.items(): future = self.event_loop_.create_future() pull_fn = self._make_pull_job_cb(output_name, user_job_name, future) pull_job_inst = job_instance_util.MakePullJobInstance( pull_job_name, output_name, pull_fn ) self._run_job(pull_job_inst) output_futures[output_name] = future return output_futures