WebSphere Message Broker, Versión 8.0.0.5 Sistemas operativos: AIX, HP-Itanium, Linux, Solaris, Windows, z/OS

Consulte la información sobre la última versión del producto en IBM Integration Bus, Versión 9.0

Consideraciones acerca de las hebras para extensiones definidas por el usuario

Los nodos de proceso de mensajes y los analizadores deben trabajar en un entorno de varias instancias y varias hebras. Están disponibles muchos objetos de nodo o de analizador, cada uno con varios elementos de sintaxis, y muchas hebras pueden estar ejecutando métodos en estos objetos.

Una instancia de un nodo de proceso de flujo de mensajes la comparten y la utilizan todas las hebras que dan servicio al flujo de mensajes en el que se ha definido el nodo. Los analizadores se invocan en la misma hebra que los nodos, por lo que si el flujo utiliza varias hebras, los analizadores también.

Una extensión definida por el usuario debe utilizar este modelo. Si un nodo definido por el usuario requiere datos o recursos globales, debe proteger los datos o recursos globales utilizando semáforos para serializar el acceso a través de las hebras. Sin embargo, estas serializaciones pueden provocar cuellos de botella en el rendimiento. Evite la utilización de datos y recursos globales para crear una solución más escalable.

Las funciones implementadas por extensiones definidas por el usuario deben ser reentrantes y cualquier función que invoquen también debe serlo. Todas las funciones de utilidad de extensiones definidas por el usuario son totalmente reentrantes.

Aunque una extensión definida por el usuario puede crear hebras adicionales si es necesario, se deben invocar todas las funciones de programa de utilidad C y los métodos Java™ en la misma hebra que ha llamado a la función cniEvaluate en C o el método evaluate en Java, según sea apropiado para el lenguaje en el que se ha escrito el nodo. Si no se utiliza la misma hebra, es posible que el código comprometa la integridad del intermediario y cause un comportamiento imprevisible. Las hebras adicionales no deben llamar a la API de extensión definida por el usuario. La API sólo se debe utilizar desde la hebra principal invocada por el intermediario.

Para obtener información sobre la función cniEvaluate, consulte cniEvaluate.

Avisos | Marcas registradas | Descargas | Biblioteca | Soporte | Comentarios

Copyright IBM Corporation 1999, 2014Copyright IBM Corporation 1999, 2014.

        
        Última actualización:
        
        Última actualización: 2015-02-28 17:00:20


Tema de conceptoTema de concepto | Versión 8.0.0.5 | as01460_