Network filesystems seem to be one of those things that's remarkably tricky to get right; my experience with that on Linux hasn't been much better, i.e. mounted drives that have become disconnected can cause anything from tens-of-minutes-long waits to forever hangs. I think it's a tension between giving up too easily (and thus you get errors in applications whenever the network is even slightly intermittent) and trying too hard to reconnect (permanent hangs, in the case of infinite retries.)