Állandó tároló a kiszolgálón
Optimalizálhatja az alkalmazást, hogy a kiszolgálói csonk ne szabadíthassa fel a memóriát a kiszolgálón egy távoli eljáráshívás befejezésekor. Ha például egy környezetleírót több távoli eljárás is módosít, az ACF attribútumot [allocate(dont_free)] használhatja a kiszolgáló lefoglalt memóriájának megőrzéséhez.
A [allocate(dont_free)] attribútum hozzáadódik az ACF typedef deklarációhoz az ACF-ben. Például:
/* ACF file fragment */
typedef [allocate(all_nodes, dont_free)] P_TREE_TYPE;
Ha a [allocate(dont_free)] attribútum meg van adva, a fa adatstruktúráját a kiszolgálói csonk lefoglalja, de nem szabadít fel. Ha az ilyen állandó adatterületekre mutató mutatókat elérhetővé teszi más rutinok számára – például a mutatók globális változókra másolásával –, a megtartott adatok más kiszolgálófüggvények számára is elérhetők lesznek. A [allocate(dont_free)] attribútum különösen hasznos az állandó mutatóstruktúrák fenntartásához a környezetleíró típushoz társított kiszolgálóállapot-információk részeként.