Concurrent programming principles and practice - Andrews, Gregory R. (Addison-Wesley, 1995)