Phiên bản được hỗ trợ:hiện tại(17) /16 / 15 / 14 / 13
Phiên bản phát triển:18 / Devel
Phiên bản tỷ lệ kèo bóng đá trực tuyến hôm nay được hỗ trợ:12 / 11 / 10 / 9.6 / 9.5 / 9.4 / 9.3 / 9.2 / 9.1 / 9.0 / 8.4 / 8.3 / 8.2 / 8.1 / 8.0 / 7.4 / 7.3 / 7.2 / 7.1
Tài liệu này dành cho phiên bản tỷ lệ kèo bóng đá trực tuyến hôm nay được hỗ trợ của PostgreSQL.
Bạn có thể muốn xem cùng một trang chohiện tạiPhiên bản hoặc một trong các phiên bản được hỗ trợ khác được liệt kê ở trên thay thế.

31.8. tỷ lệ kèo bóng đá trực tuyến hôm nay bộ

PostgreSQLcung cấp tỷ lệ kèo bóng đá trực tuyến hôm nay bộ quaNghetỷ lệ kèo bóng đá trực tuyến hôm naylệnh. Một phiên khách đăng ký sự quan tâm của nó đối với một kênh tỷ lệ kèo bóng đá trực tuyến hôm nay cụ thể vớiNgheLệnh (và có thể ngừng nghe vớiUndistenlệnh). Tất cả các phiên nghe trên một kênh cụ thể sẽ được tỷ lệ kèo bóng đá trực tuyến hôm nay bộ khi Atỷ lệ kèo bóng đá trực tuyến hôm nayLệnh có tên kênh đó được thực hiện bởi bất kỳ phiên nào. MỘT"Tải trọng"Chuỗi có thể được truyền để truyền đạt dữ liệu bổ sung cho người nghe.

libpqỨng dụng gửinghe, Unlistentỷ lệ kèo bóng đá trực tuyến hôm nayCác lệnh như các lệnh SQL tỷ lệ kèo bóng đá trực tuyến hôm nay thường. Sự xuất hiện củatỷ lệ kèo bóng đá trực tuyến hôm nayTin nhắn sau đó có thể được phát hiện bằng cách gọipqnotifyes.

hàmpqnotifyesTrả về thông báo tiếp theo từ danh sách các thông báo tỷ lệ kèo bóng đá trực tuyến hôm nay được xử lý nhận được từ máy chủ. Nó trả về một con trỏ null nếu không có thông báo đang chờ xử lý. Sau khi thông báo được trả về từpqnotify, nó được coi là xử lý và sẽ bị xóa khỏi danh sách các tỷ lệ kèo bóng đá trực tuyến hôm nay.

pgnotify *pqnotifyes (pgconn *Conn);

typedef struct pgnotify

    char *relname;              / * Tên kênh tỷ lệ kèo bóng đá trực tuyến hôm nay */
    int be_pid;                / * Quy trình ID tỷ lệ kèo bóng đá trực tuyến hôm nay quy trình máy chủ */
    char *thêm;                / * Chuỗi tải trọng tỷ lệ kèo bóng đá trực tuyến hôm nay */
 Pgnotify;

Sau khi xử lý ApgnotifyĐối tượng được trả về bởipqnotifyes, Hãy chắc chắn giải phóng nó bằngPQFreemem. Nó đủ để giải phóngpgnotifyCon trỏ; TherelnameExtraCác trường tỷ lệ kèo bóng đá trực tuyến hôm nay đại diện cho phân bổ riêng biệt. (Tên của các trường này là lịch sử; đặc biệt, tên kênh tỷ lệ kèo bóng đá trực tuyến hôm nay cần phải làm gì với tên quan hệ.)

Ví dụ 31-2Đưa ra một chương trình mẫu minh họa cho việc sử dụng tỷ lệ kèo bóng đá trực tuyến hôm nay bộ.

pqnotifytỷ lệ kèo bóng đá trực tuyến hôm nay thực sự đọc dữ liệu từ máy chủ; nó chỉ trả về các tin nhắn được hấp thụ trước đó bởi một người kháclibpqHàm. Trong các bản phát hành trước củalibpq, Cách duy nhất để đảm bảo nhận được thời giantỷ lệ kèo bóng đá trực tuyến hôm nayTin nhắn đã liên tục gửi các lệnh, thậm chí các lệnh trống, sau đó kiểm trapqnotifysau mỗiPQEXEC. Mặc dù điều này vẫn hoạt động, nhưng nó tỷ lệ kèo bóng đá trực tuyến hôm nay được lãng phí sức mạnh xử lý.

Cách tốt hơn để kiểm tratỷ lệ kèo bóng đá trực tuyến hôm nayTin nhắn Khi bạn tỷ lệ kèo bóng đá trực tuyến hôm nay có lệnh hữu ích để thực thi là gọiPQConsumeInput, sau đó kiểm trapqnotifyes. Bạn có thể sử dụngselect ()Để chờ dữ liệu đến từ máy chủ, do đó tỷ lệ kèo bóng đá trực tuyến hôm nay sử dụngCPUsức mạnh trừ khi có việc gì đó. (Nhìn thấyPQSocketĐể có được số mô tả tệp để sử dụng vớiselect ().) Lưu ý rằng điều này sẽ hoạt động OK cho dù bạn gửi các lệnh vớiPQSendQuery/PQGetResulthoặc đơn giản là sử dụngPQEXEC. Tuy nhiên, bạn nên nhớ kiểm trapqnotifyessau mỗiPQGetResulthoặcPQEXEC, để xem có bất kỳ tỷ lệ kèo bóng đá trực tuyến hôm nay nào được đưa vào trong quá trình xử lý lệnh không.