Leggere in inglese

Condividi tramite


attributo optimize

L'attributo [optimize] ACF viene usato per ottimizzare il livello di gradazione per il marshalling dei dati.

Nota

Questa parola chiave viene sostituita e non deve essere usata. Le compilazioni MIDL correnti devono usare invece /Oicf/robust .

 

optimize ("optimization-options")

Parametri

opzioni di ottimizzazione

Specifica il metodo di marshalling dei dati. Usare "s" per il marshalling in modalità mista o "i" per il marshalling interpretato.

Commenti

Questa versione di RPC fornisce due metodi per il marshalling dei dati: modalità mista ("s") e interpretata ("i"). Questi metodi corrispondono alle opzioni della riga di comando /Os e /Oi . Il metodo interpretato esegue il marshalling dei dati completamente offline. Anche se ciò può ridurre notevolmente le dimensioni dello stub, le prestazioni possono essere interessate.

Se le prestazioni sono un problema, il metodo in modalità mista può essere l'approccio migliore. La modalità mista consente al compilatore MIDL di effettuare la determinazione tra i dati inline e che verrà eseguito il marshalling da una chiamata a una libreria di collegamento dinamico offline. Se molte procedure usano gli stessi tipi di dati, è possibile chiamare ripetutamente una singola procedura per eseguire il marshalling dei dati. In questo modo, i dati più adatti al marshalling inline vengono elaborati inline mentre altri dati possono essere in modo più efficiente in marshalling offline.

Si noti che l'attributo [optimize] può essere usato come attributo di interfaccia o come attributo dell'operazione. Se viene usato come attributo di interfaccia, imposta il valore predefinito per l'intera interfaccia, sostituendo le opzioni della riga di comando. Se, tuttavia, viene usato come attributo di operazione, influisce solo su tale operazione, l'override delle opzioni della riga di comando e l'impostazione predefinita dell'interfaccia.

Esempi

optimize ("s") HRESULT FasterProcedure(...); 
optimize ("i") HRESULT SmallerProcedure(...);

Vedere anche

File di configurazione dell'applicazione (ACF)

/Oi

/Os

/robust