# Ignition Module getTagManager

**URL:** <https://forum.inductiveautomation.com/t/ignition-module-gettagmanager/93757>\
**Category:** Module Development\
**Tags:** ignition81\
**Created:** [July 25, 2024, 4:32pm UTC](https://forum.inductiveautomation.com/t/ignition-module-gettagmanager/93757 "2024-07-25T16:32:55Z")\
**Posts on this page:** 5\
**Page:** 1

<div class="post-metadata">

**Author:** ![jtdfan](https://avatars.discourse-cdn.com/v4/letter/j/a88e4f/32.png) [@jtdfan](https://forum.inductiveautomation.com/u/jtdfan)\
**Post date:** [July 25, 2024, 4:32pm UTC](https://forum.inductiveautomation.com/t/ignition-module-gettagmanager/93757/1 "2024-07-25T16:32:55Z")

</div>

If we implement a TagChangeListener interface and subscribe to tags using

context.getTagManager().subscribeAsync(tagPath, this),

do the tagChangedEvents share threads with the 3 thread limit of tag change scripts? I know it has been brought up before to move scripts that may take longer than 10 ms into GatewayTagChangeScripts, but we are doing this script work inside of our custom modules.

---

<div class="post-metadata">

**Author:** ![Kevin.Herron](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/kevin.herron/32/7259_2.png) [@Kevin.Herron](https://forum.inductiveautomation.com/u/Kevin.Herron)\
**Post date:** [July 25, 2024, 4:36pm UTC](https://forum.inductiveautomation.com/t/ignition-module-gettagmanager/93757/2 "2024-07-25T16:36:47Z")

</div>

You actually have to be even more careful in this case. For each Tag Provider these callbacks are queued and delivered on a single thread.

---

<div class="post-metadata">

**Author:** ![pturmel](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/pturmel/32/3295_2.png) [@pturmel](https://forum.inductiveautomation.com/u/pturmel)\
**Post date:** [July 25, 2024, 4:55pm UTC](https://forum.inductiveautomation.com/t/ignition-module-gettagmanager/93757/3 "2024-07-25T16:55:30Z")

</div>

> [@Kevin.Herron](#):
>
> delivered on a single thread

Hmm. Good to know.

---

<div class="post-metadata">

**Author:** ![jtdfan](https://avatars.discourse-cdn.com/v4/letter/j/a88e4f/32.png) [@jtdfan](https://forum.inductiveautomation.com/u/jtdfan)\
**Post date:** [July 25, 2024, 5:36pm UTC](https://forum.inductiveautomation.com/t/ignition-module-gettagmanager/93757/4 "2024-07-25T17:36:11Z")

</div>

I have X number of devices using the same number of tags, but they can be dynamically added using our user interface and module.

We want to monitor a number of tags on the UDT instances created, but we want to monitor them from an Ignition module. If TagChangeListeners are sharing a thread, what is a better way to do it from within the module?

---

<div class="post-metadata">

**Author:** ![pturmel](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/pturmel/32/3295_2.png) [@pturmel](https://forum.inductiveautomation.com/u/pturmel)\
**Post date:** [July 25, 2024, 5:38pm UTC](https://forum.inductiveautomation.com/t/ignition-module-gettagmanager/93757/5 "2024-07-25T17:38:35Z")

</div>

> [@jtdfan](#):
>
> what is a better way

I would use the listener, but just have it package the event content into a new object, and place your own runnable for it on your own thread pool executor.
