PostgreSQL: kèo bóng đá hôm | |||
---|---|---|---|
prev | UP | Chương 45. Giao diện lập trình máy chủ | NEXT |
SPI_EXECUTE
hoặc một hàm tương tựPostgreSQLPhân bổ bộ nhớ trongbối kèo bóng đá việt nam bộ nhớ, cung cấp một phương pháp thuận tiện để kèo bóng đá việt nam lý phân bổ được thực hiện ở nhiều nơi khác nhau cần sống trong thời gian khác nhau. Phá hủy một bối cảnh phát hành tất cả các bộ nhớ được phân bổ trong đó. Do đó, không cần thiết phải theo dõi các đối tượng riêng lẻ để tránh rò rỉ bộ nhớ; thay vào đó chỉ có một số lượng nhỏ các bối cảnh phải được kèo bóng đá việt nam lý.PalloC
và các chức năng liên quan phân bổ bộ nhớ từ"Hiện tại"bối kèo bóng đá việt nam.
spi_connect
Tạo ngữ kèo bóng đá việt nam bộ nhớ mới và làm cho nó hiện tại.spi_finish
khôi phục bối kèo bóng đá việt nam bộ nhớ hiện tại trước đó và phá hủy bối kèo bóng đá việt nam được tạo bởispi_connect
. Những hành động này đảm bảo rằng các phân bổ bộ nhớ thoáng qua được thực hiện bên trong thủ tục của bạn được thu hồi khi thoát thủ tục, tránh rò rỉ bộ nhớ.
12744_12909palloc
, ít nhất là không trong khi bạn được kết nối với SPI. Nếu bạn thử, đối tượng sẽ được giải quyết bởispi_finish
và quy trình của bạn sẽ không hoạt động một cách đáng tin cậy. Để giải quyết vấn đề này, hãy sử dụngspi_palloc
Để phân bổ bộ nhớ cho đối tượng trả về của bạn.spi_palloc
Phân bổ bộ nhớ trong"Bối kèo bóng đá việt nam thực thi trên", nghĩa là bối kèo bóng đá việt nam bộ nhớ hiện tại khispi_connect
được gọi, đây chính xác là bối kèo bóng đá việt nam phù hợp cho một giá trị được trả về từ thủ tục của bạn.
nếuspi_palloc
được gọi trong khi quy trình không được kết nối với SPI, thì nó hoạt động giống như bình thườngPalloC
. Trước khi một thủ tục kết nối với Trình kèo bóng đá việt nam lý SPI, bối cảnh bộ nhớ hiện tại là bối cảnh thực thi trên, vì vậy tất cả các phân bổ được thực hiện bởi quy trình quaPalloC
hoặc theo các hàm tiện ích SPI được thực hiện trong bối kèo bóng đá việt nam này.
Khispi_connect
được gọi, bối kèo bóng đá việt nam riêng tư của quy trình, được tạo bởispi_connect
, được thực hiện bối kèo bóng đá việt nam hiện tại. Tất cả các phân bổ được thực hiện bởiPalloC
, Repalloc
hoặc các hàm tiện ích SPI (ngoại trừspi_copytuple
, spi_returntuple
, spi_modifytuple
vàspi_palloc
) được thực hiện trong bối cảnh này. Khi một thủ tục ngắt kết nối với Trình kèo bóng đá việt nam lý SPI (quaspi_finish
) Bối kèo bóng đá việt nam hiện tại được khôi phục về bối kèo bóng đá việt nam thực thi trên và tất cả các phân bổ được thực hiện trong bối kèo bóng đá việt nam bộ nhớ thủ tục được giải phóng và không thể được sử dụng nữa.
Tất cả các chức năng được mô tả trong phần này có thể được sử dụng bởi cả các quy trình được kết nối và không kết nối. Trong một quy trình không kết nối, chúng hoạt động giống như các chức năng máy chủ thông thường cơ bản (PalloC
, v.v.).