docstr: Return a task object in the correct order based on task id if
  result(s) is available. Otherwise, raise queue.Empty exception.
docstr_tok: ["Return","a","task","object","in","the","correct","order","based","on","task","id","if","result","(","s",")","is","available",".","Otherwise",",","raise","queue.Empty","exception","."]
code: def get(self):
      """
      Return a task object in the correct order based on task id if
      result(s) is available. Otherwise, raise queue.Empty exception.
      """
      if self.result_data.get(self.get_idx + 1) is not None:
          self.get_idx += 1
          res = self.result_data[self.get_idx]
          del self.result_data[self.get_idx]
          return res
      while True:
          res = self.result_queue.get(block=False)
          idx = res.id
          if idx == self.get_idx + 1:
              self.get_idx += 1
              return res
          self.result_data[idx] = res
  
imports: import atexit
  import numpy
  import queue
  import torch
  import torch.multiprocessing
  import slowfast.utils.logging
  from slowfast.datasets import cv2_transform
  from slowfast.visualization.predictor import Predictor
label_desc: Use image node_id 3 for calling the AsycnActionPredictor obj's underlying member method code with example usage: obj.get() and returns: res, res