class_docstr: Extends Dask's `Callback` class with Ray-specific hooks. When instantiating
  or subclassing this class, both the normal Dask hooks (e.g. pretask,
  posttask, etc.) and the Ray-specific hooks can be provided.
  
  See `dask.callbacks.Callback` for usage.
  
  Caveats: Any Dask-Ray scheduler must bring the Ray-specific callbacks into
  context using the `local_ray_callbacks` context manager, since the built-in
  `local_callbacks` context manager provided by Dask isn't aware of this
  class.
class_docstr_tok: ["Extends","Dask","'s","`","Callback","`","class","with","Ray-specific","hooks",".","When","instantiating","or","subclassing","this","class",",","both","the","normal","Dask","hooks","(","e.g",".","pretask",",","posttask",",","etc",".",")","and","the","Ray-specific","hooks","can","be","provided",".","See","`","dask.callbacks.Callback","`","for","usage",".","Caveats",":","Any","Dask-Ray","scheduler","must","bring","the","Ray-specific","callbacks","into","context","using","the","`","local_ray_callbacks","`","context","manager",",","since","the","built-in","`","local_callbacks","`","context","manager","provided","by","Dask","is","n't","aware","of","this","class","."]
code: def __exit__(self, *args):
      super().__exit__(*args)
      self._ray_cm.__exit__(*args)
  
imports: import contextlib
  from collections import namedtuple, defaultdict
  from datetime import datetime
  from dask.callbacks import Callback
label_desc: Use image node_id 4 for calling the RayDaskCallback obj's underlying member method code with example usage: obj.__exit__() without return types