One issue that cropped up in one of my fortresses is that while building up a complicated front entrance, I made the mistake of building a channel linked directly to the river while the dwarves were still mining in a completely enclosed area. When the channel flooded, those dwarves became trapped in their enclosed area, as the only exit to the enclosed area now had a filled channel of water across it.
I tried to build a bridge across the channel, but the problem was that because this was a miner wolfing run, all of my trapped miners had the architecture task enabled. So, a trapped miner would look at the bridge and try to build it, then complain that the materials weren't accessible and suspend the construction.
The problem, of course, is that there were still two people that were not trapped in that enclosed area, who had ready access to the materials and who had the architecture task enabled. But before they could have a chance to build the bridge to rescue their compatriots, the job was claimed and suspended by one of the trapped miners. I had to explicitly disable architecture on the trapped miners to get the bridge built.
My suggestion is to have a "round robin" style of job claiming, where a job tracks who can attempt the job and who can't. If a job is checked by someone and they can't perform that job at the moment, they simply ignore that job and the next available dwarf checks that job. This process repeats itself until one of the following conditions is met:
1) A dwarf successfully accepts the task, or
2) All dwarfs with the required labour task are unable to perform the job, whereupon the job becomes suspended.
[ March 20, 2007: Message edited by: JT ]