---
title: Modelo de subprocesos
slug: develop/es/modelo-de-subprocesos
docTags: 
createdAt: 2025-03-11T07:07:17.199Z
---

BrightScript se ejecuta en un solo hilo. En general, las llamadas a objetos de BrightScript son síncronas si devuelven rápidamente, y asíncronas si tardan una cantidad considerable de tiempo en completarse. Por ejemplo, los métodos que pertenecen al objeto *roArray* son todos síncronos, mientras que el método `Play()` que forma parte del objeto *roVideoPlayer* devolverá inmediatamente (es asíncrono). Mientras se reproduce un video, el objeto *roVideoPlayer* publicará mensajes en el puerto de mensajes, indicando eventos como “reproducción de medios finalizada” o “fotograma x alcanzado”.             &#x20;

El implementador del objeto decide si un objeto BrightScript debe iniciar un hilo en segundo plano para realizar una operación síncrona. A veces, un objeto incluirá versiones síncronas y asíncronas del mismo método.

Este modelo de subprocesos garantiza que el escritor del script no tenga que lidiar con mutexes y otros objetos de sincronización. El script siempre es de un solo hilo, y el puerto de mensajes se sondea o se espera para recibir eventos en el hilo. Por otro lado, quienes implementan objetos BrightScript deben considerar los problemas de subprocesos: por ejemplo, los objetos *roList* y *roMessagePort* son internamente seguros para subprocesos, lo que permite que sean utilizados por múltiples hilos.
