parameters: (self)
docstring: Internal: Join all non-daemon threads
docstring_summary: Internal: Join all non-daemon threads
docstring_tokens: Internal : Join all non - daemon threads
function: def _join_threads(self):
          """Internal: Join all non-daemon threads"""
          threads = [thread for thread in list(self._threads.values())
                     if thread.is_alive() and not thread.daemon]
          for thread in threads:
              thread.join()
function_tokens: def _join_threads ( self ) : threads = [ thread for thread in list ( self . _threads . values ( ) ) if thread . is_alive ( ) and not thread . daemon ] for thread in threads : thread . join ( )