# `Lockstep.Strategy.FairPCT`
[🔗](https://github.com/b-erdem/lockstep/blob/v0.1.0/lib/lockstep/strategy/fair_pct.ex#L1)

PCT for the first `K` steps, then uniform random walk.

Coyote uses this hybrid as a probabilistically-fair PCT. Pure PCT can
livelock on programs with spin loops because a high-priority process
spinning on a low-priority process starves it. After step `K` we fall
back to random scheduling, which is probabilistically fair.

## Options

Inherits all of `Lockstep.Strategy.PCT`'s options, plus:

  * `:fair_switch` — step at which to flip to random; defaults to
    `div(max_steps, 2)`.

---

*Consult [api-reference.md](api-reference.md) for complete listing*
