INNER CODE UNIT · Python
future
MichielMe/fastscheduler · src/fastscheduler/main.py:493
future = executor.submit(job.func, *job.args, **job.kwargs)
try:
future.result(timeout=job.timeout)
except FuturesTimeoutError:
raise TimeoutError(f"Job timed out after {job.timeout}s")
else:
job.func(*job.args, **job.kwargs)
execution_time = time.time() - start_time
with self.lock:
self.stats["total_runs"] += 1
self._log_history(
job.job_id,
job.func_name,
JobStatus.COMPLETED,
run_count=job.run_count,