What does it mean when a function yields? On this page GlobalDataStore | Roblox Creator Documentation yields.
1 Like
It will pause and hold up the code until it finishes running. wait is a yielding function. So is WaitForChild. GetAsync will hold up the code until it finishes running, whenever the data finishes loading.
So GetAsync() is like this
repeat
dataStore:GetAsync()
until dataloaded == true
1 Like
In the way that the code under it won’t run until the data is loaded. Behind the scenes of course it looks vastly different.
Hello JayO_X!
A yielding function is one that stops the code from executing until it has finished returning.
An example would be as follows.
local testtick = tick()
GlobalDataStore:GetAsync()
print(tick() - testtick) --depending on how long the function takes to finish yielding, this can vary from a couple milliseconds to seconds
You could compare it to the same as waiting.
local testtick = tick()
wait(5)
print(tick() - testtick) --these are similar because a yielding function **waits** until it is ready to return what it needs to
2 Likes