第九章 本地进程间通信(管道)

文章目录

  • [第九章 本地进程间通信(管道)](#第九章 本地进程间通信(管道))
  • 介绍
  • [打开 `IRIS` 实用程序的管道](#打开 IRIS 实用程序的管道)
  • 管道和命令管道
  • [标准管道 `OPEN`](#标准管道 OPEN)
  • [`OPEN` 命令管道打开](#OPEN 命令管道打开)

第九章 本地进程间通信(管道)

本页介绍如何通过管道与 IRIS® 数据平台外部的进程建立通信。

介绍

可以通过管道在 IRIS 进程和外部 UNIX®Windows 进程之间进行通信,就像在 UNIX®Windows 操作系统级别一样。可以将输出发送到管道或从管道接收输入。管道为单向;不能同时读取和写入同一个程序。

当打开另一个程序的管道进行输出时,可以像写入顺序文件一样对其进行写入。然后程序使用编写的内容作为其输入流。当希望 IRIS 进程与外部进程共享资源时,此功能特别有用。

打开 IRIS 实用程序的管道

可以打开通往 IRIS 实用程序以及 UNIX®Windows 进程的管道。在将管道用于实用程序 I/O 之前,系统管理员必须在 IRIS 系统上定义管道设备。

系统管理员定义管道设备后,当运行实用程序(例如^%RD )时,可以使用系统管理员定义的助记符回答Device:提示。输出会自动发送到该设备。

管道和命令管道

IRIS 支持标准管道和命令管道 (CPIPE)。标准管道用于相对较短的命令字符串,其中命令名称及其参数少于 256 个字符。当命令字符串长度为 256 个字符或更长时,使用命令管道。在这两种情况下,管道只能在 UNIX®Windows 系统上使用。

标准管道 OPEN

以下是标准管道的OPEN命令语法:

java 复制代码
OPEN program:(parameters):timeout

因为program是第一个参数(设备参数),所以它必须遵循OPEN命令设备名称的256个字符的限制。

如果对已打开的标准管道发出OPEN命令,则第二个OPEN将被忽略。没有发出错误。

OPEN 命令管道打开

以下是命令管道的OPEN命令语法:

java 复制代码
OPEN cpipename:program:timeout
OPEN cpipename:(program:parameters:::closetimeout):timeout

cpipename参数可以采用值"|CPIPE|"如果只有命令管道同时打开。要打开多个并发管道,请指定"|CPIPE|xxxxxx" ,其中xxxxxx表示用户指定的唯一标识符。此cpipename参数是为后续USECLOSE命令指定的参数。

由于program是第二个参数,因此它不限于256个字符。程序的最大长度取决于平台。

如果对已打开的命令管道发出OPEN命令,则第二个OPEN将被忽略。没有发出错误。

相关推荐
unable code19 小时前
攻防世界-Misc-can_has_stdio?
网络安全·ctf·misc·1024程序员节
思茂信息19 小时前
CST License(Flexnet)设置与问题处理方法
服务器·网络·单片机·3d·php·1024程序员节·cst
2301_797892831 天前
论文阅读:《Hypergraph Motif Representation Learning》
论文阅读·1024程序员节
CoderYanger1 天前
前端基础——CSS练习项目:百度热榜实现
开发语言·前端·css·百度·html·1024程序员节
liu****2 天前
13.POSIX信号量
linux·开发语言·c++·算法·1024程序员节
liu****2 天前
12.线程同步与互斥
linux·数据结构·c++·算法·1024程序员节
CoderJia程序员甲2 天前
GitHub 热榜项目 - 日榜(2025-11-08)
ai·开源·github·1024程序员节·ai教程
大布布将军3 天前
《前端九阴真经》
前端·javascript·经验分享·程序人生·前端框架·1024程序员节
liu****3 天前
12.线程同步和生产消费模型
linux·服务器·开发语言·c++·1024程序员节
小苏兮3 天前
【把Linux“聊”明白】自动化构建-make/Makefile详解
linux·服务器·学习·自动化·1024程序员节