On 15.10.2007 17:24, Roger Pack wrote: >> |ensure_uninterruptible # (or call it ensure_critical) >> >> It's not as simple as you've expected. First we need to define how >> "uninterruptible" section work. > > I agree. One definition would be to mark Thread.critical, then runs the > block, then unmark. I would use it :) Bad idea in light of native threads IMHO. Every construct that halts all threads should be avoided. If you need exclusive access to resources you need to proper synchronize on them. > Good point :) My suggestions are thinning down quickly :) :-) Cheers robert