module Concurrent::ThreadSafe::Util::XorShiftRandom

A xorshift random number (positive +Fixnum+s) generator, provides reasonably cheap way to generate thread local random numbers without contending for the global Kernel.rand.

Usage:

x = XorShiftRandom.get # uses Kernel.rand to generate an initial seed
while true
  if (x = XorShiftRandom.xorshift).odd? # thread-localy generate a next random number
    do_something_at_random
  end
end