Compartir a través de


Administración de identificadores

El administrador de tablas de enrutamiento mantiene un recuento de referencias para toda la información que mantiene. Esto impide que el administrador de tablas de enrutamiento vuelva a un cliente cualquier identificador de memoria que se haya liberado. Cada vez que se devuelve un identificador al autor de la llamada, ya sea como un identificador explícito o como parte de una estructura de información, como RTM_DEST_INFO, se incrementa el recuento de referencias del objeto que corresponde al identificador. Cuando se libera el identificador o la estructura de información, se reduce el recuento de referencias adecuado. Cuando el recuento de referencias se convierte en cero, el objeto se libera.

Las funciones RtmGetDestInfo, RtmGetEntityInfo, RtmGetRouteInfo y RtmGetNextHopInfo devuelven estructuras de información. Estas funciones corresponden a las funciones RtmReleaseDestInfo, RtmReleaseEntityInfo, RtmReleaseRouteInfo y RtmRelaseNextHopInfo , respectivamente.

Nota

La función RtmReleaseChangedDests debe usarse para liberar identificadores devueltos por una llamada a RtmGetChangedDests. No use RtmReleaseDests para las estructuras de destino modificadas.

 

Si un cliente debe mantener un identificador específico en una estructura de información al liberar el resto, el cliente puede llamar a RtmReferenceHandles con ese identificador antes de liberar la estructura de información. A continuación, el identificador se puede liberar mediante una llamada a las funciones RtmReleaseDestInfo, RtmReleaseEntityInfo, RtmReleaseRouteInfo y RtmRelaseNextHopInfo .