Мне нужно подождать в сценарии, пока не будет выполнено определенное количество условий?Есть ли простой способ в Python дождаться определенного условия?
Я знаю, что могу катить мои собственные события с использованием переменных условий и друзей, но я не хочу испытывать трудности с его внедрением, поскольку некоторые изменения свойств объекта происходят из внешнего потока в завернутой библиотеке C++ (Boost .Python), поэтому я не могу просто захватить __setattr__
в классе и поставить там переменную условия, которая оставляет меня либо пытаться создать и сигнализировать переменную состояния Python из C++, либо обернуть собственный, и ждать на ней в Python , оба из которых звучат странно, бесполезно сложно и скучно.
Есть ли более простой способ сделать это, запрещая непрерывный опрос состояния?
В идеале было бы по линии
res = wait_until(lambda: some_predicate, timeout)
if (not res):
print 'timed out'
Вот что я в конечном итоге делает. К счастью, производительность не является проблемой (это тестовый скрипт). –
может быть другое решение http://stackoverflow.com/a/7836454/995714 –