anchor.diff:      timer:sleep(trunc(stats_rv:exponential(Lambda))),
       case worker_next_op(State) of
           {ok, State2} ->
  -            rate_worker_run_loop(State2, Lambda);
  +            case needs_shutdown(State2) of
  +                true ->
  +                    ok;
  +                false ->
  +                    rate_worker_run_loop(State2, Lambda)
  +            end;
           ExitReason ->
               exit(ExitReason)
       end.
  
positive.code:             %% Driver (or something within it) has requested that this worker
              %% terminate cleanly.
              ?INFO("Driver ~p (~p) has requested stop: ~p\n", [State#state.driver, self(), Reason]),
              normal
      end.
  
  max_worker_run_loop(State) ->
      case worker_next_op(State) of
          {ok, State2} ->
              max_worker_run_loop(State2);
          ExitReason ->
              exit(ExitReason)
      end.
  
negative.code:             %% Driver crashed, generate a crash error and terminate. This will take down
              %% the corresponding worker which will get restarted by the appropriate supervisor.
              basho_bench_stats:op_complete(Next, {error, crash}, ElapsedUs),
  
              %% Give the driver a chance to cleanup
              (catch (State#state.driver):terminate({'EXIT', Reason}, State#state.driver_state)),
  
              ?DEBUG("Driver ~p crashed: ~p\n", [State#state.driver, Reason]),
              crash;
  
  