Some time back I wrote http://home.att.net/~jimmaureenrogers/Shared_Resource_Design_Patterns.html to document several shared resource design patterns I have found useful in concurrent programs. All the examples are written in Ada, but I suspect you will have no problem understanding them. Jim Rogers