MemoryStoreService GetASync seems to pause the script

Whenever I use the GetASync function sometimes it ends up pausing the script in there for some reason. I’m not sure if it’s because of too many queues, but I’m sure I’m not using the max limit, not even close. I need this figured out, any help would be appreciated.

Every function that contains “async” will mean it will yield the code, therefore pausing it. Wrap it inside a coroutine so that doesn’t happen.

I’ve never actually used coroutine. Could you explain what wrapping it in a coroutine does?

Simple and direct, “A coroutine is used to perform multiple tasks at the same time from within the same script. Such tasks might include producing values from inputs or performing work on a subroutine when solving a larger problem. A task doesn’t even need to have a defined ending point, but it does need to define particular times at which it yields (pause) to let other things be worked on. See Coroutine basics to learn more.”

Actually, I don’t think coroutine would fix it, as most of the time it runs without any yielding or delay, but sometimes the function ends up yielding. Do you know why it yields sometimes? Is it because too much overload on the MemoryStore?

I haven’t used the service, so I might be wrong for this, but it’s basically a temp datastore, making almost the same kind of calls, taking almost the same amount of time. Internet connection and Roblox’s servers running capacity is at work here