<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def _blocking_poll(self, timeout=None):
 """Poll and wait for the Future to be resolved. Args: timeout (int):
 How long (in seconds) to wait for the operation to complete. If None, wait indefinitely. """

        if self._result_set:
            return

        retry_ = self._retry.with_deadline(timeout)

        try:
            retry_(self._done_or_raise)()
        except exceptions.RetryError:
            raise concurrent.futures.TimeoutError(
                "Operation did not complete within the designated " "timeout."
            )