Puede crear una hebra que inicia una tarea en CICS utilizando CICSExecutorService. Si utiliza este servicio para crear una hebra, se crea una tarea de CICS que puede utilizar la API de JCICS para acceder a los servicios de CICS.
Tiene dos opciones para crear una hebra que inicia una tarea de CICS. Si desea que el código sea portátil, puede utilizar el ExecutorService de la infraestructura de OSGi. Cuando la aplicación se ejecuta en un servidor de JVM, la infraestructura de OSGi utiliza automáticamente la implementación de CICS para iniciar una tarea de CICS cuando se crea una hebra. Si escribe una aplicación específicamente para CICS, puede utilizar la clase CICSExecutorService directamente utilizando JCICS.
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)
{
// Ponga en línea la nueva clase Runnable
class CICSJob implements Runnable
{
public void run()
{
// Cree una cola de almacenamiento temporal
TSQ test_tsq = new TSQ();
test_tsq.setType(TSQType.MAIN);
// Establezca el nombre de TSQ
test_tsq.setName("TSQWRITE");
// Escriba en la cola de almacenamiento temporal
// Utilice el CCSID local de la región de CICS para que sea legible
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();
}
}
}
// Cree y ejecute la nueva clase CICSJob
Runnable task = new CICSJob();
CICSExecutorService.runAsCICS(task);
}
}