diff --git a/src/ska_tango_base/base/component_manager.py b/src/ska_tango_base/base/component_manager.py
index 824c994f0a92dcaba38266e7745b824bbec9f035..273569035fdfea0c39c687dcf31bf30f7cd55ec6 100644
--- a/src/ska_tango_base/base/component_manager.py
+++ b/src/ska_tango_base/base/component_manager.py
@@ -54,6 +54,9 @@ class BaseComponentManager:
             manager
         """
         self.op_state_model = op_state_model
+        self._max_queue_size = kwargs.get("max_queue_size", 0)
+        self._num_workers = kwargs.get("num_workers", 0)
+        self._push_change_event = kwargs.get("push_change_event", None)
         self._queue_manager = self.create_queue_manager()
 
     def start_communicating(self):
@@ -216,7 +219,13 @@ class BaseComponentManager:
         :return: The queue manager.
         :rtype: QueueManager
         """
-        return QueueManager(max_queue_size=0, num_workers=0)
+        logger = getattr(self, "logger", None)
+        return QueueManager(
+            max_queue_size=self._max_queue_size,
+            num_workers=self._num_workers,
+            logger=logger,
+            push_change_event=self._push_change_event,
+        )
 
     def enqueue(
         self,
diff --git a/src/ska_tango_base/base/reference_component_manager.py b/src/ska_tango_base/base/reference_component_manager.py
index 8a8f94e33f543212c84592e0123a5f4f307dc185..b830eb84a35f4563eedf6246d69ca8a58770b2cd 100644
--- a/src/ska_tango_base/base/reference_component_manager.py
+++ b/src/ska_tango_base/base/reference_component_manager.py
@@ -5,11 +5,8 @@ It is provided for explanatory purposes, and to support testing of this
 package.
 """
 import functools
-import logging
-from typing import Optional, Callable
 
-from ska_tango_base.base import BaseComponentManager, OpStateModel
-from ska_tango_base.base.task_queue_manager import QueueManager
+from ska_tango_base.base import BaseComponentManager
 from ska_tango_base.control_model import PowerMode
 from ska_tango_base.faults import ComponentFault
 
@@ -392,51 +389,3 @@ class ReferenceBaseComponentManager(BaseComponentManager):
         This is a callback hook.
         """
         self.op_state_model.perform_action("component_fault")
-
-
-class QueueWorkerComponentManager(ReferenceBaseComponentManager):
-    """A component manager that configures the queue manager."""
-
-    def __init__(
-        self,
-        op_state_model: Optional[OpStateModel],
-        logger: logging.Logger,
-        max_queue_size: int,
-        num_workers: int,
-        push_change_event: Optional[Callable],
-        *args,
-        **kwargs
-    ):
-        """Component manager that configures the queue.
-
-        :param op_state_model: The ops state model
-        :type op_state_model: OpStateModel
-        :param logger: Logger to use
-        :type logger: logging.Logger
-        :param max_queue_size: The size of the queue
-        :type max_queue_size: int
-        :param num_workers: The number of workers
-        :type num_workers: int
-        :param push_change_event: A method that will be called when attributes are updated
-        :type push_change_event: Callable
-        """
-        self.logger = logger
-        self.max_queue_size = max_queue_size
-        self.num_workers = num_workers
-        self.push_change_event = push_change_event
-        super().__init__(op_state_model, *args, logger=logger, **kwargs)
-
-    def create_queue_manager(self) -> QueueManager:
-        """Create a QueueManager.
-
-        Create the QueueManager with the queue configured as needed.
-
-        :return: The queue manager
-        :rtype: QueueManager
-        """
-        return QueueManager(
-            max_queue_size=self.max_queue_size,
-            num_workers=self.num_workers,
-            logger=self.logger,
-            push_change_event=self.push_change_event,
-        )
diff --git a/tests/long_running_tasks/reference_base_device.py b/tests/long_running_tasks/reference_base_device.py
index 329d1c54e8652add3617931b6ae347bdbe6ba4bb..47a67578dc41c0219fb0cba68f034938b73b7269 100644
--- a/tests/long_running_tasks/reference_base_device.py
+++ b/tests/long_running_tasks/reference_base_device.py
@@ -14,7 +14,9 @@ import tango
 from tango.server import command, device_property
 from tango import DebugIt
 
-from ska_tango_base.base.reference_component_manager import QueueWorkerComponentManager
+from ska_tango_base.base.reference_component_manager import (
+    ReferenceBaseComponentManager,
+)
 from ska_tango_base.base.base_device import SKABaseDevice
 from ska_tango_base.base.task_queue_manager import ResultCode
 from ska_tango_base.commands import ResponseCommand
@@ -234,7 +236,7 @@ class AsyncBaseDevice(LongRunningCommandBaseTestDevice):
 
     def create_component_manager(self: SKABaseDevice):
         """Create the component manager with a queue manager that has workers."""
-        return QueueWorkerComponentManager(
+        return ReferenceBaseComponentManager(
             op_state_model=self.op_state_model,
             logger=self.logger,
             max_queue_size=20,
diff --git a/tests/long_running_tasks/test_task_queue_manager.py b/tests/long_running_tasks/test_task_queue_manager.py
index f20b0e56df428ff6591fb4c31d8e4d26e692b659..fd764c2608c348486529acb86ddd96a82c0ae53c 100644
--- a/tests/long_running_tasks/test_task_queue_manager.py
+++ b/tests/long_running_tasks/test_task_queue_manager.py
@@ -10,7 +10,9 @@ from ska_tango_base.base.task_queue_manager import (
     TaskResult,
     TaskState,
 )
-from ska_tango_base.base.reference_component_manager import QueueWorkerComponentManager
+from ska_tango_base.base.reference_component_manager import (
+    ReferenceBaseComponentManager,
+)
 from ska_tango_base.commands import BaseCommand
 
 logger = logging.getLogger(__name__)
@@ -396,7 +398,7 @@ class TestQueueManagerExit:
                     )
                 )
 
-        cm = QueueWorkerComponentManager(
+        cm = ReferenceBaseComponentManager(
             op_state_model=None,
             logger=logger,
             max_queue_size=10,
@@ -458,7 +460,7 @@ class TestQueueManagerExit:
     @pytest.mark.timeout(5)
     def test_exit_stop(self, stop_task):
         """Test stopping exit."""
-        cm = QueueWorkerComponentManager(
+        cm = ReferenceBaseComponentManager(
             op_state_model=None,
             logger=logger,
             max_queue_size=5,
@@ -486,7 +488,7 @@ class TestQueueManagerExit:
     @pytest.mark.timeout(5)
     def test_delete_queue(self, slow_task, stop_task, abort_task):
         """Test deleting the queue."""
-        cm = QueueWorkerComponentManager(
+        cm = ReferenceBaseComponentManager(
             op_state_model=None,
             logger=logger,
             max_queue_size=8,
@@ -514,7 +516,7 @@ class TestComponentManager:
 
     def test_init(self):
         """Test that we can init the component manager."""
-        cm = QueueWorkerComponentManager(
+        cm = ReferenceBaseComponentManager(
             op_state_model=None,
             logger=logger,
             max_queue_size=0,