CORBA IDL输入、输出和输出



在CORBA IDL函数参数中,in、out和inout-"定向"运算符究竟意味着什么?

Ciaran McHale的免费在线书籍《CORBA简单解释:》

操作的参数具有指定的方向,可以是in(表示参数已传递从客户端到服务器)、out(参数是从服务器返回客户端)或inout(参数同时传入方向)。

因此,in参数与"传统"函数参数非常相似,因为调用者必须为它们传递一个值,并且该值由服务器用来完成工作。

out参数就像一个返回值,所以调用者永远不会用值填充它。当函数返回时(假设没有抛出异常),它就神奇地有了一个值,因为服务器负责将一个值作为其执行规则的一部分放入其中。您可以有任意多个out参数,这样就可以返回多个不同的对象或值,而不必首先将它们组合成struct

inout参数结合了上述两个概念。调用方必须用有效数据填充所有inout参数,但在函数返回后,这些值可能会有所不同,因为服务器可以自由地在其中放入新数据。

最新更新