Concurrent And Real-time Programming In Ada by Alan Burns & Andy Wellings