Tôi muốn tạo thư viện được xây dựng trên đầu trang của QTcpServer
và QTcpSocket
để sử dụng trong các chương trình không có vòng lặp sự kiện trong các chức năng main
của họ (vì vòng lặp sự kiện Qt đang chặn và không cung cấp đủ độ phân giải thời gian cho yêu cầu hoạt động trong thời gian thực).Có thể tạo vòng lặp sự kiện cục bộ mà không cần gọi QApplication :: exec() không?
Tôi đã hy vọng có được điều này bằng cách tạo vòng lặp sự kiện địa phương trong lớp, nhưng chúng dường như không hoạt động trừ khi tôi đã gọi app->exec()
trong chức năng chính trước tiên. Có cách nào để tạo vòng lặp sự kiện cục bộ và cho phép giao tiếp tín hiệu/khe trong chuỗi không có vòng lặp sự kiện cấp ứng dụng không?
Tôi đã xem Is there a way to use Qt without QApplication::exec()? nhưng câu trả lời không giúp được vì có vẻ như giải pháp thêm vòng lặp sự kiện cục bộ nhưng không xóa vòng lặp ứng dụng.
đẻ trứng một chuỗi mới có 'QApplication :: exec()' và giữ cho nó tồn tại dưới dạng "chuỗi chính"? –
Tôi sẽ thử. Nhược điểm duy nhất là ngay cả khi hoạt động nó có thể sẽ ngăn cản tôi sử dụng thư viện trong tương lai với các ứng dụng Qt thực tế vì bạn chắc chắn không thể có hai cuộc gọi đến 'QApplication :: exec' –