# Why does only one poller thread handle a task queue per Java process?

**URL:** <https://community.temporal.io/t/why-does-only-one-poller-thread-handle-a-task-queue-per-java-process/17758>\
**Category:** Community Support\
**Tags:** java-sdk, general-impl\
**Created:** [June 25, 2025, 8:44pm UTC](https://community.temporal.io/t/why-does-only-one-poller-thread-handle-a-task-queue-per-java-process/17758 "2025-06-25T20:44:34Z")\
**Posts on this page:** 2\
**Page:** 1

<div class="post-metadata">

**Author:** ![Akanksha](https://avatars.discourse-cdn.com/v4/letter/a/b4bc9f/32.png) [@Akanksha](https://community.temporal.io/u/Akanksha)\
**Post date:** [June 25, 2025, 8:44pm UTC](https://community.temporal.io/t/why-does-only-one-poller-thread-handle-a-task-queue-per-java-process/17758/1 "2025-06-25T20:44:34Z")

</div>

Hi all,

In the Java SDK, what happens if I create multiple `Worker` instances in the **same Java process** , all listening to the **same task queue**?

From what I’ve observed, only one poller seems to be active. Is this expected behavior? If so, is there documentation or source code that explains why only one poller thread is used per task queue per process?

Thanks!

---

<div class="post-metadata">

**Author:** ![maxim](https://sea2.discourse-cdn.com/flex016/user_avatar/community.temporal.io/maxim/32/8_2.png) [@maxim](https://community.temporal.io/u/maxim)\
**Post date:** [June 26, 2025, 9:48pm UTC](https://community.temporal.io/t/why-does-only-one-poller-thread-handle-a-task-queue-per-java-process/17758/2 "2025-06-26T21:48:28Z")

</div>

What is the use case for having multiple workers listening on the same task queue inside a single process?
