cniDispatchThread

Essa função despacha um novo encadeamento de fluxo de mensagens para chamar outra instância de encadeamento para executar o nó input do fluxo de mensagens definido pelo usuário. Esse encadeamento do fluxo de mensagens é alocado de um conjunto de encadeamentos mantido para cada fluxo de mensagens, sob controle da propriedade Additional Instances do fluxo de mensagens. Se não existirem encadeamentos disponíveis porque todos estão em uso, CCI_SUCCESS é retornado e returnCode é definido como CCI_NO_THREADS_AVAILABLE. Isso não é um erro, mas significa uma das seguintes condições:
  • O fluxo de mensagens não foi configurado para executar com encadeamentos adicionais.
  • Todos os encadeamentos adicionais configurados estão em execução no momento.

A função cniDispatchThread somente pode ser emitida de um nó input. Se ela for emitida em qualquer outro momento, CCI_FAILURE é retornado e returnCode é definido como CCI_INV_NODE_ENV.

Sintaxe

int cniDispatchThread(
  int*        returnCode,
  CciNode*    nodeObject);

Parâmetros

returnCode
O código de retorno da função (saída).
Os possíveis códigos de retorno são:
  • CCI_SUCCESS
  • CCI_EXCEPTION
  • CCI_NO_THREADS_AVAILABLE
  • CCI_INV_NODE_OBJECT
  • CCI_INV_NODE_ENV
nodeObject
O endereço do objeto de nó que é executado quando o WebSphere Message Broker cria ou reutiliza o encadeamento.Isso é transmitido ao nó quando sua função de implementação cniCreateNodeContext é chamada (entrada).

Valores de Retorno

  • Se um encadeamento for alocado com êxito, CCI_SUCCESS é retornado e returnCode é definido como CCI_SUCCESS.
  • Se não for possível despachar um encadeamento porque não havia encadeamentos suficientes no conjunto de encadeamentos do fluxo de mensagens para satisfazer ao pedido, CCI_SUCCESS é retornado e returnCode é definido como CCI_NO_THREADS_AVAILABLE.
  • Se a função não foi emitida de dentro de um nó input, CCI_FAILURE é retornado e returnCode é definido como CCI_INV_NODE_ENV.
  • Para qualquer outra condição de erro, CCI_FAILURE é retornado e returnCode indica a razão do erro.

Exemplo

  cniDispatchThread(&rcDispatch, ((NODE_CONTEXT_ST
*)context)->nodeObject);
Tarefas relacionadas
Criando um Nó Input em C
Avisos | Marcas Registradas | Downloads | Biblioteca | Suporte | Feedback
Direitos Autorais IBM Corporation 1999, 2006 Última Atualização: 1 Sep 2006
as07520_