Example #1
0
    def get(self, timeout=None):
        try:
            return super(GeventFuture, self).get(timeout=timeout)
        except NotImplementedError:
            pass

        try:
            return self.async_result.get(timeout=timeout)
        except _gevent.Timeout as e:
            raise _Timeout(e)
Example #2
0
 def get(self, timeout=None):
     try:
         if self._data is None:
             self._data = self._queue.get(True, timeout)
         if 'exc_info' in self._data:
             exc_info = self._data['exc_info']
             if PY3:
                 raise exc_info[1].with_traceback(exc_info[2])
             else:
                 exec(  # pylint: disable = W0122
                     'raise exc_info[0], exc_info[1], exc_info[2]')
         else:
             return self._data['value']
     except _queue.Empty:
         raise _Timeout('%s seconds' % timeout)
Example #3
0
    def get(self, timeout=None):
        try:
            return super(ThreadingFuture, self).get(timeout=timeout)
        except NotImplementedError:
            pass

        try:
            if self._data is None:
                self._data = self._queue.get(True, timeout)
            if 'exc_info' in self._data:
                exc_info = self._data['exc_info']
                if PY3:
                    raise exc_info[1].with_traceback(exc_info[2])
                else:
                    exec('raise exc_info[0], exc_info[1], exc_info[2]')
            else:
                return self._data['value']
        except _queue.Empty:
            raise _Timeout('%s seconds' % timeout)
Example #4
0
    def get(self, timeout=None):
        try:
            return super(ThreadingFuture, self).get(timeout=timeout)
        except NotImplementedError:
            pass

        try:
            if self._data is None:
                self._data = self._queue.get(True, timeout)
            if 'exc_info' in self._data:
                exc_info = self._data['exc_info']
                if PY3:
                    raise exc_info[1].with_traceback(exc_info[2])
                else:
                    exec('raise exc_info[0], exc_info[1], exc_info[2]')
            else:
                return self._data['value']
        except _queue.Empty:
            raise _Timeout('%s seconds' % timeout)