Skip to content

Commit 5d0bc27

Browse files
committed
Recursion => while loop
1 parent 4a05334 commit 5d0bc27

File tree

1 file changed

+19
-19
lines changed

1 file changed

+19
-19
lines changed

src/bloqade/analog/task/exclusive.py

Lines changed: 19 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -254,26 +254,26 @@ def pull(self,poll_interval:float=20):
254254
Please ensure that it is relatively large, otherwise
255255
the server could get overloaded with queries.
256256
"""
257-
if self._task_result_ir.task_status is QuEraTaskStatusCode.Unsubmitted:
258-
raise ValueError("Task ID not found.")
259-
260-
if self._task_result_ir.task_status in [
261-
QuEraTaskStatusCode.Completed,
262-
QuEraTaskStatusCode.Partial,
263-
QuEraTaskStatusCode.Failed,
264-
QuEraTaskStatusCode.Unaccepted,
265-
QuEraTaskStatusCode.Cancelled,
266-
]:
267-
return self
268-
269-
status = self.status()
270-
if status in [QuEraTaskStatusCode.Completed, QuEraTaskStatusCode.Partial]:
271-
self._task_result_ir = self._http_handler.fetch_results(self._task_id)
272-
else:
273-
time.sleep(poll_interval)
274-
self.pull(poll_interval)
275257

276-
return self
258+
while True:
259+
if self._task_result_ir.task_status is QuEraTaskStatusCode.Unsubmitted:
260+
raise ValueError("Task ID not found.")
261+
262+
if self._task_result_ir.task_status in [
263+
QuEraTaskStatusCode.Completed,
264+
QuEraTaskStatusCode.Partial,
265+
QuEraTaskStatusCode.Failed,
266+
QuEraTaskStatusCode.Unaccepted,
267+
QuEraTaskStatusCode.Cancelled,
268+
]:
269+
return self
270+
271+
status = self.status()
272+
if status in [QuEraTaskStatusCode.Completed, QuEraTaskStatusCode.Partial]:
273+
self._task_result_ir = self._http_handler.fetch_results(self._task_id)
274+
return self
275+
276+
time.sleep(poll_interval)
277277

278278
def cancel(self):
279279
# This is not supported

0 commit comments

Comments
 (0)