runInContext(context, callback, cbThis, args) {
    const toInvoke = cbThis ? callback.bind(cbThis) : callback

    if (args) {
      return this._asyncLocalStorage.run(context, toInvoke, ...args)
    }

    return this._asyncLocalStorage.run(context, toInvoke)
  }
Run a function with the passed in context as the active context.
Restores the previously active context upon completion.

@param {object} context The context to set as active during callback execution.
@param {Function} callback The function to execute in context.
@param {Function} [cbThis] Optional `this` to apply to the callback.
@param {Array<*>} [args] Optional arguments object or args array to invoke the callback with.
@returns {*} Returns the value returned by the callback function.