class_docstr: Serving server based on `tfe.queue.FIFOQueue`.
class_docstr_tok: ["Serving","server","based","on","`","tfe.queue.FIFOQueue","`","."]
docstr: Continuously serve computations, for `num_steps` if specified.
  
  If specified, `step_fn` is called after each step.
docstr_tok: ["Continuously","serve","computations",",","for","`","num_steps","`","if","specified",".","If","specified",",","`","step_fn","`","is","called","after","each","step","."]
code: def run(self, num_steps=None, step_fn=None):
      """
      Continuously serve computations, for `num_steps` if specified.
  
      If specified, `step_fn` is called after each step.
      """
      if num_steps is not None:
          for _ in range(num_steps):
              self.run_step()
              if step_fn is not None:
                  step_fn()
      else:
          while True:
              self.run_step()
              if step_fn is not None:
                  step_fn()
  
file_path: tf-encrypted/tf_encrypted/serving/queues.py
imports: import numpy
  import tensorflow
  import tf_encrypted
label_desc: Use image node_id 2 for calling the QueueServer obj's underlying member method code with example usage: obj.run(num_steps, step_fn) without return types