optimize 属性
[optimize] ACF 属性用于微调封送数据的分级级别。
optimize ("optimization-options")
-
optimization-options
-
指定封送数据的方法。 使用“s”进行混合模式封送处理,或使用“i”进行解释封送处理。
此版本的 RPC 提供两种用于封送数据的方法:混合模式 (“s”) 和解释 (“i”) 。 这些方法对应于 /Os 和 /Oi 命令行开关。 解释的方法完全脱机封送数据。 虽然这可以大大减少存根的大小,但性能可能会受到影响。
如果考虑性能,混合模式方法可能是最佳方法。 混合模式允许 MIDL 编译器确定哪些数据将以内联方式封送,哪些数据将通过对脱机动态链接库的调用进行封送。 如果许多过程使用相同的数据类型,则可以重复调用单个过程来封送数据。 这样,最适合内联封送处理的数据将以内联方式处理,而其他数据可以更有效地脱机封送。
请注意, [optimize] 属性可用作接口属性或操作属性。 如果将其用作接口属性,它将设置整个接口的默认值,重写命令行开关。 但是,如果将其用作操作属性,则它仅影响该操作,从而替代命令行开关和接口默认值。
optimize ("s") HRESULT FasterProcedure(...);
optimize ("i") HRESULT SmallerProcedure(...);