Hi,
Thank you for providing test portal.
In the context provided, the term "asynchronous" does not pertain to the request/response time differential of 0.001 seconds.
While the request times appear comparable, the response times may vary. Consequently, if tasks A, B, and C are being executed concurrently, the order in which the responses are received is not predetermined. The responses could be received in the following sequences: Response B, A, and C or Response A, C, and B. The getUserRequestContext characteristic is used for that calculation. This enables iteration to derive the appropriate response.
// Request
const contextA = {id: "Request A", element: videoElementA};
const contextB = {id: "Request B", element: videoElementB}
adsLoader.requestAds(adsRequestA, contextA);
adsLoader.requestAds(adsRequestB, contextB)
// Response
const context = adsManagerLoadedEvent.getUserRequestContext();
adsManager = adsManagerLoadedEvent.getAdsManager(context.element);
console.log("Successfully loaded ID: " +
context.id);
Above code is to identify the incoming async context.
Please get back to us if you need any other help related to IMA SDK.