Minor nitpick. I think this is cleaner as:
```ruby
@use_pread = IO.respond_to?(:pread) && !preload
```
Because again, `@use_pread` is a separate concern from `@mutex`.