Tôi cần phải chờ trong một kịch bản cho đến khi một số điều kiện nhất định trở thành sự thật?Có cách nào dễ dàng trong Python để chờ cho đến khi điều kiện nhất định là đúng?
Tôi biết tôi có thể cuộn sự kiện của riêng mình bằng biến điều kiện và bạn bè, nhưng tôi không muốn trải qua tất cả những rắc rối khi triển khai nó, vì một số thay đổi thuộc tính đối tượng đến từ chủ đề bên ngoài trong thư viện C++. .Python), vì vậy tôi không thể chỉ chiếm giữ __setattr__
trong một lớp và đặt biến điều kiện ở đó, để tôi tạo và báo hiệu biến điều kiện Python từ C++ hoặc quấn một biến gốc và đợi nó bằng Python , cả hai đều âm thanh khó xử, không cần thiết phức tạp và nhàm chán.
Có cách nào dễ dàng hơn để thực hiện việc này, ngăn chặn việc bỏ phiếu liên tục của điều kiện không?
Lý tưởng nhất là nó sẽ là dọc theo dòng của
res = wait_until(lambda: some_predicate, timeout)
if (not res):
print 'timed out'
Đó là những gì tôi đã kết thúc làm. May mắn thay, hiệu suất không phải là một vấn đề (đó là một kịch bản thử nghiệm). –
có thể có một giải pháp khác http://stackoverflow.com/a/7836454/995714 –