Cómo Ejecutar en Paralelo Un DLL Creado Con LabVIEW en TestStand

Actualizado el Jul 6, 2026

Ambiente

Software

  • LabVIEW
  • TestStand

Aquí se explica cómo crear un DLL de C/C++ a partir de un programa hecho en LabVIEW y ejecutarlo en paralelo. La ejecución del DLL se realiza en TestStand. Para seguir este procedimiento se requiere el siguiente software:

  • LabVIEW Professional Edition 2019 o posterior

  • TestStand (64 bits) 2019 o posterior

Los siguientes dos puntos son necesarios para ejecutar archivos DLL en paralelo.

1) EL DLL debe ser creado de forma que permita ejecución paralela.
2) Cada DLL que se ejecuta en paralelo debe ejecutarse en un hilo único e independiente.


Crear un DLL que se pueda ejecutar en paralelo con LabVIEW

Cree el siguiente programa en LabVIEW. Este programa está disponible en los archivos adjuntos de este artículo.

Este programa tiene como objetivo confirmar que las áreas de almacenamiento de datos, como colas, túneles, registros de desplazamiento y variables locales, mantienen valores independientes en cada hilo ejecutado en paralelo.

El programa obtiene una marca de tiempo cada segundo, transfiere datos mediante colas y variables locales, y en otro bucle almacena los datos en un registro de desplazamiento o en un túnel. Después de verificar la marca de tiempo cuatro veces, genera como salida una cadena de caracteres. Al configurar este programa como reentrante en la pantalla de Execution de las propiedades del VI, se habilita la ejecución en paralelo cuando el programa se convierte en un DLL.

01principal.png


La DLL establece los siguientes valores de entrada.

2dll.png



Realice la ejecución paralela del DLL con TestStand

En TestStand, cuando se desea ejecutar un proceso en paralelo en múltiples hilos, es necesario llamar a subsecuencias desde el archivo de secuencia principal.

En este ejemplo:

  • En MainSequence, se utiliza Sequence Call para llamar una secuencia 4 veces en paralelo.

  • En la configuración de Sequence Call, establezca:

    • Execution Options → Use New Thread

Al usar esta configuración, se puede confirmar que en Main Sequence, la sección Settings de cada Sequence Call cambia a New Thread.

03principal.png

Configure el Action que llama al DLL creado en LabVIEW dentro de la secuencia invocada por MainSequence. Aquí, establezca manualmente la ruta del DLL y los valores de entrada. Asimismo, puede definir los resultados que se mostrarán después de la ejecución de la secuencia en la sección Additional Results de Properties.

04actionseq.png

Cuando ejecute el archivo de secuencia de TestStand con la configuración anterior, las cuatro llamadas de secuencia se iniciarán simultáneamente, como se muestra a continuación. Posteriormente, al completarse el procesamiento dentro del DLL, podrá confirmarse la finalización de cada llamada de secuencia en la sección de espera.

5exe.png

Después de ejecutar la secuencia anterior, al revisar los resultados se observa que el DLL se ejecuta en cada una de las cuatro llamadas de secuencia, como se muestra a continuación. Asimismo, la verificación de la marca de tiempo, el almacenamiento de datos y la salida de datos durante aproximadamente 4 segundos se realizan de manera independiente y casi simultánea, lo que permite confirmar dicho comportamiento.

6resultados.png

 

El recuadro rojo indica el tiempo de inicio de ejecución del DLL, mientras que el recuadro azul indica el tiempo de finalización. Se puede confirmar que el DLL comienza y termina casi simultáneamente en cada llamada de secuencia. Además, se verifica que la confirmación de la marca de tiempo y la transferencia de datos se realizan de manera independiente.