您可以使用 CICSExecutorService 建立可在 CICS 中啟動作業的執行緒。如果您使用此服務來建立執行緒,則建立的 CICS 作業可使用 JCICS API 來存取 CICS 服務。
您有兩種選擇可建立執行緒來啟動 CICS 作業。如果希望產生可攜式的程式碼,您可以在 OSGi 架構中使用 ExecutorService。當應用程式在 JVM 伺服器中執行時,OSGi 架構會自動使用 CICS 實作,在建立執行緒時啟動 CICS 作業。如果您針對 CICS 來撰寫應用程式,則可以使用 JCICS 來直接使用 CICSExecutorService 類別。
package com.ibm.cics.executor.test;
import com.ibm.cics.server.CICSExecutorService;
import com.ibm.cics.server.TSQ;
import com.ibm.cics.server.TSQType;
public class ExecutorTest
{
public static void main(String[] args)
{
// 列入新的 Runnable 類別
class CICSJob implements Runnable
{
public void run()
{
// 建立暫時儲存體佇列
TSQ test_tsq = new TSQ();
test_tsq.setType(TSQType.MAIN);
// 設定 TSQ 名稱
test_tsq.setName("TSQWRITE");
// 寫入暫時儲存體佇列
// 使用 CICS 區域本端 CCSID 以便讀取
String test_string = "Hello from a non CICS Thread - "+ threadId;
try
{
test_tsq.writeItem(test_string.getBytes(System.getProperty("com.ibm.cics.jvmserver.local.ccsid")));
}
catch (Exception e)
{
e.printStackTrace();
}
}
}
// 建立並執行新的 CICSJob Runnable
Runnable task = new CICSJob();
CICSExecutorService.runAsCICS(task);
}
}