PostgreSQL: kèo bóng đá hôm | |||
---|---|---|---|
prev | UP | Chương 57. Viết nhà cung cấp quét kèo tỷ số bóng đá euro hôm nay | NEXT |
Khi ACustomScanđược kèo tỷ số bóng đá euro hôm nay thi, trạng thái kèo tỷ số bóng đá euro hôm nay thi của nó được biểu thị bằng mộtCustomScanstate, được khai báo như sau:
Typedef Struct CustomScanState Scanstate SS; Cờ Uint32; Phương pháp Const CustomExecMethods *; CustomScanState;
SS8782_8896SS.SS_CienRelationcờlà một chút mặt nạ có cùng ý nghĩa như trongCustomPathvàCustomScan. Phương phápphải trỏ đến một đối tượng (thường được phân bổ tĩnh) thực hiện các phương thức trạng thái quét kèo tỷ số bóng đá euro hôm nay cần thiết, được chi tiết hơn dưới đây. Thông thường, ACustomScanState, không cần hỗ trợCopyObject
, kèo tỷ số bóng đá euro hôm nay sự sẽ là một cấu trúc lớn hơn nhúng ở trên là thành viên đầu tiên của nó.
void ( *BeginCustomScan) (CustomScanState *Node, Bất động sản *Bất động sản, int eflags);
Khởi tạo hoàn toàn được cung cấpCustomScanState. Các trường tiêu chuẩn đã được khởi tạo bởiExecItCustomScan
, nhưng bất kỳ trường riêng nào cũng nên được khởi tạo ở đây.
tupletableslot *( *ExecCustomScan) (CustomScanState *Node);
Tìm nạp bộ kèo tỷ số bóng đá euro hôm nay tiếp theo. Nếu có bất kỳ bộ dữ liệu nào vẫn còn, nó sẽ lấp đầyps_resulttuplotVới bộ tiếp theo theo hướng kèo tỷ số bóng đá euro hôm nay hiện tại, sau đó trả về khe Tuple. Nếu không,nullhoặc một khe trống phải được trả về.
void ( *EndCustomScan) (CustomScanState *Node);
Làm sạch bất kỳ dữ liệu riêng tư nào được liên kết vớiCustomScanstate. Phương pháp này là bắt buộc, nhưng nó không cần phải làm bất cứ điều gì nếu không có dữ liệu liên quan hoặc nó sẽ được làm sạch tự động.
void ( *RescancustomScan) (CustomScanState *Node);
Tua lại quá trình kèo tỷ số bóng đá euro hôm nay hiện tại đến đầu và chuẩn bị cứu lại mối quan hệ.
void ( *markposcustomscan) (CustomScanState *Node);
Lưu vị trí kèo tỷ số bóng đá euro hôm nay hiện tại để sau đó có thể được khôi phục bởireprposcustomscan
gọi lại. Cuộc gọi lại này là kèo tỷ số bóng đá euro hôm nay chọn và chỉ cần được cung cấp nếuCustompath_support_mark_restorecờ được đặt.
11287_11340
Khôi phục vị trí kèo tỷ số bóng đá euro hôm nay trước đó được lưu bởiMarkposcustomScan
gọi lại. Cuộc gọi lại này là kèo tỷ số bóng đá euro hôm nay chọn và chỉ cần được cung cấp nếuCustompath_support_mark_restorecờ được đặt.
kích thước ( *ước tínhSmcustomScan) (CustomScanstate *Node, Song song với các
Ước tính lượng bộ nhớ chia sẻ động sẽ được yêu cầu cho hoạt động song song. Điều này có thể cao hơn số lượng thực sự sẽ được sử dụng, nhưng nó không được thấp hơn. Giá trị trả về là trong byte. Cuộc gọi lại này là tùy chọn và chỉ cần được cung cấp nếu nhà cung cấp quét kèo tỷ số bóng đá euro hôm nay này hỗ trợ thực thi song song.
void ( *khởi tạoSmcustomScan) (CustomScanstate *Node, Song song void *tọa độ);
Khởi tạo bộ nhớ chia sẻ động sẽ được yêu cầu cho hoạt động song song;tọa độChỉ vào một lượng không gian được phân bổ bằng với giá trị trả về củaƯớc tínhSmcustomScan
12501_12615
void ( *Khởi tạo công tác dụng cụ shm_toc *toc, void *tọa độ);
Khởi tạo trạng thái kèo tỷ số bóng đá euro hôm nay của công nhân song song dựa trên trạng thái được chia sẻ được thiết lập trong nhà lãnh đạo bởikhởi tạoSmcustomScan. Cuộc gọi lại này là tùy chọn và chỉ cần được cung cấp nếu đường dẫn kèo tỷ số bóng đá euro hôm nay này hỗ trợ thực thi song song.
void ( *Giải thíchCustomScan) (CustomScanstate *Node, Danh sách *Tổ tiên, Giải thích *es);
xuất thông tin bổ sung choGiải thíchcủa nút kế hoạch quét kèo tỷ số bóng đá euro hôm nay. Cuộc gọi lại này là tùy chọn. Dữ liệu phổ biến được lưu trữ trongScanState, chẳng hạn như danh sách đích và quan hệ kèo tỷ số bóng đá euro hôm nay, sẽ được hiển thị ngay cả khi không có cuộc gọi lại này, nhưng cuộc gọi lại cho phép hiển thị trạng thái riêng, riêng tư.