class_docstr: Extend Dask's Client with handlers to handle PubSub machinery
code: def trigger_cleanup(self):
      self.client.loop.add_callback(self.cleanup)
  
imports: from __future__ import annotations
  import asyncio
  import logging
  import threading
  import weakref
  from collections import defaultdict, deque
  from dask.utils import parse_timedelta
  from distributed.core import CommClosedError
  from distributed.metrics import time
  from distributed.protocol.serialize import to_serialize
  from distributed.utils import TimeoutError, sync, wait_for
label_desc: Use image node_id 2 for calling the PubSubClientExtension obj's underlying member method code with example usage: obj.trigger_cleanup() without return types