Robust Multithreaded Applications. door Jeffrey Michael Napper