Trong Qt event loop, networking and I/O API talk của mình, Thiago Macieira đề cập rằng làm tổ của QEventLoop
's nên tránh:Tại sao nên lồng ghép QEventLoops?
QEventLoop được cho sự kiện tổ Loops ... Tránh nó nếu bạn có thể bởi vì nó tạo ra một số vấn đề: thứ có thể nhập lại , kích hoạt mới của ổ cắm hoặc bộ hẹn giờ mà bạn không mong đợi.
Ai có thể mở rộng về những gì anh ta đang đề cập đến không? Tôi duy trì rất nhiều mã sử dụng các hộp thoại phương thức mà nội bộ làm tổ một vòng lặp sự kiện mới khi exec()
được gọi là vì vậy tôi rất quan tâm đến việc biết loại vấn đề này có thể dẫn đến.
Cảm ơn câu trả lời của bạn. Bạn có bất kỳ ý tưởng về "kích hoạt mới của ổ cắm hoặc giờ mà bạn không mong đợi"? – MuchToLearn
@MuchToLearn Đó là ý nghĩa của việc nhập lại mã của bạn. Mã mà bạn gọi là 'exec' có thể, nói chung, được gọi lại. Nguồn của các sự kiện như vậy có thể là giao diện người dùng, nhưng nó có thể là bộ tính giờ, ổ cắm, sự kiện nền tảng gốc, v.v. –
Máy trạng thái giống như một mô hình còn thiếu để bổ sung cho lập trình hướng đối tượng, chức năng và khai báo. – doc