Tôi đang tạo một dự án bằng Python và tôi muốn thêm một hệ thống giám sát sử dụng các sự kiện và trình xử lý sự kiện. Tôi muốn hệ thống này có sẵn trong suốt dự án. Tôi có các hoạt động sau đây trong đầu:Hệ thống giám sát với các sự kiện trong Python
- Xác định sự kiện. Sự kiện có thể lấy một số dữ liệu làm tham số.
- Xác định màn hình. Một màn hình đăng ký cho một sự kiện nào đó. Nhiều màn hình có thể đăng ký cho cùng một sự kiện. Tôi muốn tạo các loại màn hình khác nhau, ví dụ: một để in dữ liệu, một để tạo lô với dữ liệu, vv Do đó một màn hình phải là một lớp, có khả năng giữ tất cả dữ liệu mà nó thu thập cho đến khi một số phương thức (ví dụ: in, tạo nhật ký, ...) được gọi.
- Xác định trình xử lý sự kiện cho cặp sự kiện theo dõi. Điều này xác định cách màn hình cho trước sẽ trả lời cho sự kiện đã cho. Hành động này chủ yếu sẽ là: thêm dữ liệu này vào danh sách dữ liệu của cá thể của một số lớp giám sát.
- Chức năng thông báo có thể thông báo khi có sự kiện xảy ra. Điều này sẽ kích hoạt trình xử lý sự kiện cho tất cả các màn hình được đăng ký cho sự kiện đó. Lý tưởng nhất, chức năng thông báo phải được gọi từ bất cứ nơi nào trong dự án.
Làm cách nào để tạo một hệ thống như vậy? Có thư viện nào có thể giúp tôi với điều này không? Tôi đặc biệt tự hỏi làm thế nào tôi có thể làm cho hệ thống này theo cách như vậy mà nó là minh bạch có sẵn trong suốt dự án.
là liên kết này một cái gì đó tương ứng với nhu cầu của bạn? https://stackoverflow.com/questions/1092531/event-system-in-python –
@LudovicGuerra Điều này chắc chắn hữu ích, ví dụ: Blinker trông rất đẹp. Nhưng tôi đang tìm người xử lý là một lớp và không phải là một chức năng đơn giản. Trong lớp này, tôi sẽ thu thập tất cả dữ liệu và sau đó gọi hàm, ví dụ: để xuất sang CSV hoặc tạo bản đồ dữ liệu đã ghi. – JNevens