第七章 Cach 變數大全 IO 變數

2021-10-16 13:09:09 字數 1478 閱讀 1241

包含當前輸入/輸出裝置的id。…

$io

$i

$io包含所有輸入/輸出操作所指向的當前裝置的裝置id。如果輸入和輸出裝置不同,則$io包含當前輸入裝置的id。

caché在登入時將$io的值設定為主要輸入/輸出裝置。$principal包含主體裝置的id。發出use命令來更改當前裝置。只有useclose命令,break命令或返回程式設計器提示才可以更改此值。

可以使用%library.device類的gettype()方法返回當前裝置的裝置型別。

在unix®系統上,$io包含實際的裝置名稱。

在windows系統上,$io包含主體裝置由caché生成的唯一識別符號。對於終端裝置(trm或tnt),它由用豎線,冒號和另乙個豎線括起來的偽裝置名稱組成,後跟裝置的程序id(pid)號。對於非終端裝置,偽裝置名稱用豎線括起來,後跟唯一的數字識別符號。

對於終端:| trm |:| pid

對於telnet終端:| tnt | nodename:portnumber | pid

對於檔案描述符:| fd | file_descriptor_number

(檔案描述符與callin / callout遠端訪問一起使用。)

對於tcp裝置:| tcp | unique_device_identifier

對於命名管道:| npipe | unique_device_identifier

對於預設印表機:| prn |

對於預設印表機以外的印表機:| prn | physical_device_name

如果主體裝置是空裝置(這是後台程序的預設值),則$io包含帶「:pid」字尾的空裝置名稱,從而使可以將$io用於唯一的下標。$io中包含的空裝置名稱取決於作業系統。

如果通過管道或檔案重定向輸入裝置,則$io包含「00」

裝置的預設裝置號是可配置的。轉到管理門戶,選擇系統,配置,裝置設定,裝置。對於所需的裝置,單擊「編輯」以顯示和修改其「物理裝置名稱:」選項。如果這樣做,$io將包含分配的裝置號,而不是實際的作業系統裝置名。

不能使用set命令修改此特殊變數。嘗試這樣做會導致錯誤。

第二章 Cach 變數大全 ECODE 變數

包含當前錯誤 字串。ecode ec發生錯誤時,cach 會將 ecode特殊變數設定為逗號分隔的字串,其中包含與錯誤相對應的錯誤 例如,當引用未定義的全域性變數時,cach 將 ecode特殊變數設定為以下字串 m7,ecode可以包含iso 11756 1999標準m錯誤 格式為m 其中 是整數...

第五章 Cach 變數大全 HALT 變數

示例 包含暫停陷阱例程呼叫。halt halt包含當前暫停陷阱例程的名稱。當遇到halt命令時,應用程式將呼叫暫停陷阱例程。該暫停陷阱例程可以在發出halt命令之前執行清理或日誌記錄處理,或者可以替代其他處理而不是暫停程式執行。可以使用set命令將 halt設定為暫停陷阱例程。暫停陷阱例程由帶引號的...

第三章 Cach 變數大全 ESTACK 變數

示例注意 estack 和錯誤處理 包含從使用者定義的點儲存在呼叫堆疊上的上下文幀的數量。estack es estack包含從使用者定義的點為job儲存在呼叫堆疊上的上下文幀的數量。可以通過使用new命令建立 estack的新副本來指定這一點。estack特殊變數類似於 stack特殊變數。兩者都...