RxFinalizeSrvCall-Funktion (fcb.h)
RxFinalizeSrvCall schließt die angegebene SRV_CALL-Struktur ab. Der Aufrufer muss über eine exklusive Sperre für die netname-Tabelle verfügen, die dem Geräteobjekt zugeordnet ist.
Syntax
BOOLEAN RxFinalizeSrvCall(
[out] OUT PSRV_CALL ThisSrvCall,
[in] IN BOOLEAN ForceFinalize
);
Parameter
[out] ThisSrvCall
Ein Zeiger auf die SRV_CALL Struktur, die abgeschlossen werden soll.
[in] ForceFinalize
Der Wert, der angibt, ob die Finalisierung erzwungen werden soll, unabhängig von der Verweisanzahl.
Wenn ForceFinalizeauf FALSE festgelegt ist, muss das NodeReferenceCount-Element der SRV_CALL Struktur, auf die von ThisSrvCall verwiesen wird, 1 sein, damit die SRV_CALL abgeschlossen werden kann.
Rückgabewert
RxFinalizeSrvCall gibt BEI Erfolg TRUE oder FALSE zurück, wenn die Finalisierung nicht erfolgt ist:
Hinweise
Die RxFinalizeSrvCall-Routine wird normalerweise nicht direkt von Netzwerk-Miniumleitungstreibern aufgerufen. RDBSS ruft diese Routine intern auf, wenn die Verweisanzahl für die SRV_CALL auf 1 dekrementiert wird. RDBSS ruft auch RxFinalizeSrvCall auf, wenn der Netzwerk-Miniumleitungstreiber beendet oder entladen wird.
Vor dem Aufrufen von RxFinalizeSrvCall muss eine Sperre für die netname-Tabelle, die dem Geräteobjekt zugeordnet ist, im exklusiven Modus abgerufen werden.
Wenn die aktuell ausgeführte Prozess-ID mit der RDBSS-Prozess-ID identisch ist, wird ein verzögerter Workerthread verteilt, um die SRV_CALL-Struktur zu zerstören. Dieser Workerthread ruft später die vom Netzwerk-Miniumleitung bereitgestellte MRxFinalizeSrvCall-Routine auf, um die SRV_CALL abzuschließen. Andernfalls wird die MRxFinalizeSrvCall-Routine direkt aufgerufen, um die SRV_CALL abzuschließen.
Anforderungen
Anforderung | Wert |
---|---|
Zielplattform | Desktop |
Kopfzeile | fcb.h (einschließlich Mrxfcb.h, Fcb.h) |
IRQL | <= APC_LEVEL |