class_docstr: A worker manager which spawns a new thread for each worker. 
docstr: Reads the result from the file name. 
docstr_tok: ["Reads","the","result","from","the","file","name","."]
code: def _read_result_from_file(self, result_file_name):
      """Reads the result from the file name."""
      # pylint: disable=bare-except
      num_attempts = 0
      while num_attempts < self._num_file_read_attempts:
          try:
              file_reader = open(result_file_name, "rb")
              result = pickle.load(file_reader)
              break
          except:
              print(
                  "Encountered error when reading %s. Trying again."
                  % (result_file_name)
              )
              time.sleep(self.poll_time)
              file_reader.close()
              result = EVAL_ERROR_CODE
      return result
  
imports: from __future__ import print_function
  from __future__ import division
  from argparse import Namespace
  from multiprocessing import Process
  import numpy
  import os
  import pickle
  import shutil
  import time
  from .exd_utils import EVAL_ERROR_CODE
label_desc: Use image node_id 7 for calling the MultiProcessingWorkerManager obj's underlying member method code with example usage: obj._read_result_from_file(result_file_name) and returns: result