docs: def stop_workers(self, _join_arbiter=True):
          """Stop the workers and wait for them to terminate."""
          # _join_arbiter is used internally when the arbiter is shutting down
          # the full engine itself. This is because the arbiter thread cannot
          # join itself.
          self._must_stop.set()
          self._workers.stop()
          self._result_notifier.join()
          self._broker.stop()
          if _join_arbiter:
              self._arbiter.join()
          self._reset()