def self.locked_def(name, &b)
instance_eval do
define_method(name) do
@posIface.Lock 1
b.call
@posIface.UnLock
end
end
end
locked_def :pos { @posIface.data.cmdVelocity.pos = pos }
Я думаю, что это будет сделано (не уверен, что я думаю о блокировке вызова).
Ответ Веппоса - лучшее решение.