美文网首页
第十七章 调用Callout Library函数 - 使用 $Z

第十七章 调用Callout Library函数 - 使用 $Z

作者: Cache技术分享 | 来源:发表于2024-01-06 08:16 被阅读0次

第十七章 调用Callout Library函数 - 使用 $ZF(-3) 进行简单的库函数调用

使用 $ZF(-3) 进行简单的库函数调用

$ZF(-3) 函数用于加载 Callout 库并执行该库中的指定函数。如果只使用一个库,或者没有进行足够的调用来担心加载库的开销,则 $ZF(-3) 最有用。它允许通过指定库名称、函数名称和以逗号分隔的函数参数列表来调用任何可用的库函数:

   result = $ZF(-3, library_name[, function_name[, arguments]])

如果先前调用 $ZF(-3) 尚未加载指定的库,则会加载指定的库。一次只能加载一个库。当后续 $ZF(-3) 调用指定不同的库时,旧库将被卸载,新库将替换它。只要后续 $ZF(-3) 调用指定相同的库,该库就会保持加载状态。加载库后,可以在后续调用中将库名称指定为空字符串 ("")

可以加载或卸载库而无需调用函数。要加载新库,只需指定库名称。要卸载当前库而不加载新库,请仅指定空字符串。无论哪种情况,$ZF(-3)都会返回一个状态代码,指示加载或卸载是否成功。

以下 ObjectScript 代码从两个不同的库中调用两个不同的函数,然后卸载当前库:

使用$ZF(-3)加载库和调用函数

   // define Callout library paths
   set libOne = "c:\intersystems\iris\bin\myfirstlibrary.dll"
   set libTwo = "c:\intersystems\iris\bin\anotherlibrary.dll"

   //load and call
   SET result1=$ZF(-3,libOne,"FuncA",123)   // loads libOne and calls FuncA
   SET result2=$ZF(-3,"","FuncB","xyz")   // calls FuncB from same library

   //load, then call with null name
   SET status=$ZF(-3,libTwo)   // unloads libOne, loads libTwo
   SET result1=$ZF(-3,"","FunctionOne","arg1")
   SET result2=$ZF(-3,"","FunctionTwo","argA", "argB")

   //unload
   SET status=$ZF(-3,"")   // unloads libTwo
  • 为了方便起见,库名称被分配给字符串 libOnelibTwo
  • 第一次调用 $ZF(-3) 加载 CalloutlibOne 并从该库调用函数 FuncA
  • 第二次调用为库名称指定一个空字符串,指示应再次使用当前加载的 libOne,并从该库调用函数 FuncB
  • $ZF(-3) 的第三次调用仅指定库名称 libTwo。这会卸载 libOne 并加载 libTwo,但不会调用任何库函数。该调用返回一个状态代码,指示 libTwo 是否已成功加载。
  • 第四个和第五个调用从当前加载的 libTwo 中调用库函数 FunctionOneFunctionTwo
  • 最后的 $ZF(-3) 调用不会调用库函数,并为库名称指定空字符串。这会卸载 libTwo 并且不会加载新库。该调用返回一个状态代码,指示 libTwo 是否已成功卸载。

本章的以下部分描述了可以一次加载多个库的 $ZF 函数。这些函数不会与$ZF(-3)冲突。始终可以使用 $ZF(-3),就好像它正在加载和卸载其自己的库的私有副本一样。

相关文章

  • 第 7 章 使用函数

    第 7 章 使用函数 7.2 调用函数 调用内建的 abs() 函数 结果: 321 7.3 定义一个函数 声明并...

  • #python入门3#函数

    调用官方函数 函数参考 https://docs.python.org/3/library/functions.h...

  • day 9 总结

    函数在声明的时候不会执行函数体,只有在调用的时候才会执行函数体.* 函数的使用: 1.1函数的调用过程(重点) 第...

  • RStudio 自行判断安装调用包

    在R中,library() 与 require() 函数都可以调用包。不同之处在于,假设包未安装,library(...

  • R语言删除矩阵指定列

    删除第1列到第5列 data <- data[,-(1:5)] 也可使用dplyr包中函数进行操作 library...

  • Kotlin 函数

    函数声明 Kotlin 中的函数使用 fun 关键字声明: 函数用法 调用函数使用传统的方法: 调用成员函数使用点...

  • swift函数与闭包

    一:声明函数,调用函数: 使用func 来声明一个函数,使用名字和参数来调用函数,使用->来制定函数返回值。形式:...

  • 009|JavaScript函数引用

    在 第5节 中,我们学习了定义与使用函数名直接调用函数。这一节里,我们来学习如何通过变量来调用函数。 将函数赋给变...

  • [记录]iOS

    marshingc#调用oc的回掉函数不能用闭包实现 library not founddllimport选项,o...

  • 函数1

    python内置了很多函数,可以直接调用 http://docs.python.org/3/library/fun...

网友评论

      本文标题:第十七章 调用Callout Library函数 - 使用 $Z

      本文链接:https://www.haomeiwen.com/subject/wycwndtx.html