Each blocking non local communication method should raise an exception when a given timeout is expired. Idea taken from [GPI](http://www.gpi-site.com/gpi2/).