parameters: (proc_id, alive, queue, fn)
docstring: Thread loop for generating data
  
          Parameters
          ----------
          proc_id: int
              Process id
          alive: multiprocessing.Value
              variable for signaling whether process should continue or not
          queue: multiprocessing.Queue
              queue for passing data back
          fn: function
              function object that returns a sample to be pushed into the queue
docstring_summary: Thread loop for generating data
docstring_tokens: Thread loop for generating data
function: def _proc_loop(proc_id, alive, queue, fn):
          """Thread loop for generating data
  
          Parameters
          ----------
          proc_id: int
              Process id
          alive: multiprocessing.Value
              variable for signaling whether process should continue or not
          queue: multiprocessing.Queue
              queue for passing data back
          fn: function
              function object that returns a sample to be pushed into the queue
          """
          print("proc {} started".format(proc_id))
          try:
              while alive.value:
                  data = fn()
                  put_success = False
                  while alive.value and not put_success:
                      try:
                          queue.put(data, timeout=0.5)
                          put_success = True
                      except QFullExcept:
                          # print("Queue Full")
                          pass
          except KeyboardInterrupt:
              print("W: interrupt received, stopping process {} ...".format(proc_id))
          print("Closing process {}".format(proc_id))
          queue.close()
function_tokens: def _proc_loop ( proc_id , alive , queue , fn ) : print ( "proc {} started" . format ( proc_id ) ) try : while alive . value : data = fn ( ) put_success = False while alive . value and not put_success : try : queue . put ( data , timeout = 0.5 ) put_success = True except QFullExcept : # print("Queue Full") pass except KeyboardInterrupt : print ( "W: interrupt received, stopping process {} ..." . format ( proc_id ) ) print ( "Closing process {}" . format ( proc_id ) ) queue . close ( )