> Wouldn't this only work if there's only one implementation throughout the entire compliation unit
in practice how often are people using more than one io in a program?
in practice how often are people using more than one io in a program?
You might have a thread pool doing some very specific thing. You can do your own threadpool which wont use the Io interface. But if one of the tasks in the threadpool wanted to read a file, I guess you'd have to pass in the blocking Io implementation.