IcomLUO.Receive 方法
接收 LU0 會話上的輸出資料。
語法
void Receive(
int timeout,
ref int datasize,
out int indication,
out short seqno,
ref System.Array data
)
參數
值 | Description |
---|---|
timeout |
執行緒可以等候資料抵達的毫秒時間週期。 藉由設定 dataSize ,您可以指出應用程式是否願意在逾時後接受部分資料。輸入 0xffffffff howLong 表示無限的時間長度。 |
datasize |
應用程式願意接受的最大資料量。 如果在 dataSize 競爭逾時之前收到資料的位元組,Receive 會傳回部分鏈結。當這個方法傳回時,會包含資料緩衝區中存在的位元組數目。 |
indication |
位 OR 中的一或多個旗標,包含輸出資料流程的其他資訊。 如需詳細資訊,請參閱<備註>一節。 |
seqno |
當這個方法傳回時,會包含鏈結的 SNA 序號。 如果在 中 indication 設定NEG_RESPONSE, seqno 可能會改為包含主機傳送回應之鏈結的序號。中 seqno 傳回的值可用於 IcomLU0.SendResponse,以傳輸 SNA 回應。 |
data |
陣列,包含要接收的資料。 |
傳回值
值 | 描述 |
---|---|
S_OK | 完整或部分資料鏈結的其餘部分已接收到資料緩衝區。 |
CLU0_S_PARTIAL_CHAIN | 部分資料鏈結已接收到資料緩衝區。 |
CLU0_S_TIMEOUT | 未在指定的逾時內收到任何資料。 您應該發出另一個接收。 |
CLU0_E_SESSIONFAILURE | LU0 會話失敗。 |
CLU0_E_SERVER_FAILURE | TSS 會話不再有效。 應用程式應該釋放會話控制碼。 |
CLU0_E_WAITING | 另一個執行緒已發出這個方法的 Receive 呼叫,但尚未傳回。 |
CLU0_E_SESSION_FAILED | 基礎 SNA 會話失敗,可能是因為連結中斷或其他暫時性失敗。 您必須中斷連線並釋放伺服器會話。 或者,您可以呼叫 IcomLU0.Offline 來重設會話,然後呼叫 IcomLU0.Online 以回應會話。 |
CLU0_E_NOTCONNECTED | comLU0 用戶端未透過呼叫 Icom3270.Connect 連線到會話。 |
CLU0_E_BADPARAM | 其中一個參數包含不正確值。 |
CLU0_E_SYSERROR | 方法因內部錯誤而失敗。 |
例外
備註
一般而言,接收區塊直到有完整的 SNA 資料鏈結可用為止。 不過,應用程式可以透過 howLong
、 maxData
和 incompleteData
來控制區塊。
接收只會傳回應用層級資料。 具體而言,Receive 不會傳回 SNA TH 和 RH 標頭。
下表描述 的 indication
可能值。
值 | Description |
---|---|
SESSION_STARTED | 下列其中之一: - 已啟動 SSCP 起始的會話。 - SDT 已重新開機 CLEAR 重設的會話。 - 先前收到 UNBIUND 的會話已由 BIND 和 SDT 重新啟用。 |
BEGIN_BRACKET | 主機已啟動新的方括弧。 |
END_BRACKET | 主機終止目前的方括弧。 |
SEND | 主機已授與傳送許可權。 |
DATA_COMPLETE | 資料代表完整的資料鏈結或資料鏈結的結尾。 |
DATA_INCOMPLETE | 資料代表不完整的資料鏈結。 |
取消 | 主機的最後一個鏈結已取消。 |
NO_RESPONSE | 應用程式不應該傳送回應至資料。 |
EXCEPTION_RESPONSE1/2 | 應用程式可能會傳送負面回應來拒絕資料,或提供通知。 |
DEFINITE_RESPONSE1/2 | 應用程式必須傳送回應至資料。 |
POS_RESPONSE | 主機已傳送正回應。 |
NEG_RESPONSE | 主機已傳送負回應。 |
EXR_REQUEST | SNA 伺服器已將主機要求轉換成例外狀況要求。 |
追逐 | 主機會要求傳送所有未處理的回應。 |
NORMAL_DATA | 資料是在一般資料流程上收到。 |
EXPEDITED_DATA | 在加速資料流程上收到資料。 |
APPL_DATA | 資料是 FMD) 資料 (應用程式。 |
FM_DATA | 資料是函式管理 (FMH) 資料。 |
LU_DATA | 在 LU 會話上收到資料。 |
SSCP_DATA | 在 SSCP 會話上收到資料。 |
CLEAR | 主機已清除會話。 |
QUIESCE | 主機已停止會話。 |
SHUTDOWN | 主機正在關閉會話。 |
RELEASE | 主機已取消停止或關機狀態。 |
UNBIND | 主機解除系結 LU-LU 會話。 |