This exception is used to preserve the caller's stacktrace when invoking an async task in a sync
context. It will be added as a suppressed exception when propagating the async exception. This
allows callers to catch ApiException thrown in an async operation, while still maintaining the
call site.
[[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Hard to understand","hardToUnderstand","thumb-down"],["Incorrect information or sample code","incorrectInformationOrSampleCode","thumb-down"],["Missing the information/samples I need","missingTheInformationSamplesINeed","thumb-down"],["Other","otherDown","thumb-down"]],["Last updated 2025-09-04 UTC."],[[["\u003cp\u003eThe latest version available is 2.63.1, but there are numerous older versions accessible on the page, starting from version 2.62.0 down to 2.7.1.\u003c/p\u003e\n"],["\u003cp\u003e\u003ccode\u003eAsyncTaskException\u003c/code\u003e is a class that extends \u003ccode\u003eRuntimeException\u003c/code\u003e, specifically designed to maintain the caller's stacktrace during synchronous invocation of asynchronous tasks.\u003c/p\u003e\n"],["\u003cp\u003eWhen an asynchronous exception occurs, \u003ccode\u003eAsyncTaskException\u003c/code\u003e is added as a suppressed exception, enabling the capture of \u003ccode\u003eApiException\u003c/code\u003e while retaining the original call site information.\u003c/p\u003e\n"],["\u003cp\u003eThe page lists the inherited members of the \u003ccode\u003eObject\u003c/code\u003e and \u003ccode\u003eThrowable\u003c/code\u003e classes that are available to the \u003ccode\u003eAsyncTaskException\u003c/code\u003e class, including methods like \u003ccode\u003eclone()\u003c/code\u003e, \u003ccode\u003eequals(Object)\u003c/code\u003e, \u003ccode\u003egetMessage()\u003c/code\u003e, \u003ccode\u003eprintStackTrace()\u003c/code\u003e, and \u003ccode\u003eaddSuppressed(Throwable)\u003c/code\u003e.\u003c/p\u003e\n"]]],[],null,[]]