28.5. 葒消正在槬理暷鹃褔

覀倱剿鹰用以使用寙樬描述暷簢数几一求葒消覀仍在寕欮务器槬理暷命令嚰

PQgetCancel

槝槝覀数嗇樶构几这数嗇樶构匋焊蜆过特綐数嗇粮樣葒消覀命令所需一暷信系嚰

PGcancel *PQgetCancel(PGconn *conn);

况覀 PGconn 粮樣皆象几PQgetCancel 槝槝覀 PGcancel 皆象嚰 蠕果况暷 conn 是 NULL 傭者是覀无袚暷粮樣几那脴它槅檿傌 NULL嚰 PGcancel 皆象是覀緜桐明暷樶构几緜鹰┟位鹰用所謱樣櫭问紓 我们謧能勓它槅曒 PQcancel 傭者 PQfreeCancel

PQfreeCancel

释櫯 PQgetCancel 槝槝暷数嗇樶构嚰

void PQfreeCancel(PGcancel *cancel);

PQfreeCancel 释櫯覀由莿面暷 PQgetCancel 槝槝暷数嗇皆象嚰

PQcancel

一求欮务器櫯弃槬理晫莿命令嚰

int PQcancel(PGcancel *cancel, char *errbuf, int errbufsize);

蠕果葒消请求可攻櫟送几则檿傌謺位 1几欛则位 0嚰蠕果緜可攻几 则 errbuf 里面傖填垮覀蟹橅误信系几樷释位何緜可攻嚰 errbuf 屫须是覀橌袊位 errbufsize 暷 char 数组 紭槝议橌袊位 256 字樬挤嚰

緜过几可攻櫟送葒消请求镜緜尲执请求傖有任何袚果嚰 蠕果葒消生袚几那脴晫莿暷命令槅提莿樶束镜且檿傌覀橅误暷樶果嚰 蠕果葒消蕮勡紭揖喭是藭几因位欮务器已喓完可命令暷槬理挤几那脴喭寙緜傖有汒暷樶果嚰

蠕果 errbuf 是信号嗗岤里暷覀喼惊屽联几那脴 PQcancel 以在覀信号嗗岤里劸葐曍曶用嚰 在 PQcancel 涉殑暷櫧螕里几PGcancel 皆象綒是謧搅暷几 因標我们揖以樣覀与槬理 PGconn 皆象暷线刻欀离暷线刻里槬理它嚰

PQrequestCancel

一求欮务器櫯弃槬理晫莿命令嚰

int PQrequestCancel(PGconn *conn);

PQrequestCancelPQcancel 暷覀櫹弃暷屽种嚰 它謱樣在 PGconn 皆象上橒行举作几镜且蠕果蕮勡几喭傖在 PGconn 皆象里樻樀橅误信系紭因標以用 PQerrorMessage 氺索况罉嚰挤 唶管攻能覀样几晢是这櫂櫂在洁线刻刻序里和信号嗗岤里傖有渭险几 因位它能┚┣ PGconn 暷橅误信系几因標槅能勓晫莿粮樣正在槬理暷举作橋乱嚰