第一章 $ZF Callout接口

文章目录

  • [第一章 ZF Callout接口](#第一章 ZF Callout接口)

第一章 $ZF Callout接口

$ZF Callout接口是一组ObjectScript函数,提供了几种将外部系统和函数调用集成到IRIS中的方法:

  • $ZF(-100)函数提供了一种简单的方法来调用操作系统命令和运行外部程序,就像从命令行界面一样。
  • 其他$ZF函数提供了各种选项(如下所述),用于让ObjectScript应用程序访问经常使用的C函数。

注:$ZF Callout接口是一种较老的InterSystems技术,主要用于让ObjectScript应用程序访问C函数库。对于使用嵌入式语言访问外部语言(如Java、.net、Python和Node.js), external Servers提供了一种更简单、更强大的选择。

$ZF Callout接口可用于多种用途,从进行简单的操作系统命令行调用到创建提供对数百个函数访问的函数库。以下选项可用:

访问操作系统调用,包括启动外部程序的调用;

  • 使用$ZF(-100)运行程序或系统命令

    调用系统命令和运行外部程序,就像从命令行界面一样。这个简单的函数不需要编写Callout库。

Callout library 访问。Callout库是用户编写的共享库(DLL或SO文件),它包含到$ZF Callout接口的钩子,允许各种$ZF函数在运行时加载它并调用它的函数。标注库通常用C编写,但也可以使用具有兼容调用约定的语言(参见"兼容语言和编译器")。各种$ZF函数的区别主要在于如何识别和加载库到内存中:

  • 使用$ZF()访问iriszf Callout Library

    创建一个名为iriszf的特殊共享库。当此库可用时,无需事先加载库或指定库名称即可访问其函数。

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

    通过指定库文件路径和函数名加载库并调用函数。它使用起来很简单,但是在虚拟内存中一次只能有一个库。与其他接口不同,它不需要在调用库函数之前进行任何初始化。

  • 使用$ZF(-5)通过系统ID访问库

    创建可用于一次有效地维护和访问多个库的接口。可以同时加载和使用多个库,每个库所需的处理开销都比$ZF(-3)少得多。

  • 使用$ZF(-6)按用户索引访问库

    为处理大量Callout库创建最有效的接口。通过全局定义的索引表访问库。 IRIS实例中的所有进程,并且多个库可以同时在内存中。

相关推荐
Nturmoils1 小时前
集中式与分布式怎么选:从订单读写看 KingbaseES 的架构边界
数据库
xiaomuzuirenzhen2 小时前
大专电子商务从事电商运营分析师需要考证吗?
大数据·数据库
来让爷抱一个2 小时前
Python 异步里混用同步库,事件循环被卡住的全过程
开发语言·python
Linux-lucky2 小时前
45-Linux学习之旅之防火墙与WEB加固
linux·前端·网络·学习·ubuntu
禁默2 小时前
启元 Q1 二次开发实践:Ubuntu 部署与仿真验证,从 PrimeConsole 到 ROS 2 Humble + RViz
linux·运维·ubuntu
skywalk81633 小时前
把 去也网站 从 Ubuntu 搬到 FreeBSD:一次 Service Jail + nginx 的部署实录
linux·运维·nginx·ubuntu·freebsd
翔云1234564 小时前
RocksDB中,客户端每写入一次数据,需要访问几次磁盘
运维·数据库·mysql
DevOpenClub4 小时前
职教高考控制线 API:招生类别枚举、筛选与空分数含义
java·数据库·高考
心祭丫丫5 小时前
【每天一个 Python 小案例17】Python 实现通讯录
开发语言·人工智能·笔记·python·学习
爱莉希雅&&&5 小时前
GitLab 完整学习笔记
linux·运维·服务器