O Roblox atualizou suas melhores práticas para lidar com tarefas assíncronas com a introdução da biblioteca de tarefas (task), que fornece uma maneira mais limpa e eficiente de lidar com tarefas em segundo plano do que as funções antigas spawn, delay e wait. A biblioteca de tarefas inclui métodos como task.spawn, task.delay e task.wait, que são projetados para serem mais confiáveis e terem um desempenho melhor.
Operação | Detalhes |
---|---|
task.spawn | task.spawn é usado para executar uma função de forma assíncrona sem bloquear o chamador. |
task.delay | task.delay é usado para executar uma função após um atraso especificado, permitindo a criação de ações temporizadas ou atrasadas sem bloquear outras operações. |
task.wait | task.wait é usado para pausar a tarefa atual por uma duração especificada. |
task.spawn
local function doBackgroundTask()
print("Background task started")
for i = 1, 10 do
print("Processing step " .. i)
wait(1) -- Simulate some processing delay
end
print("Background task completed")
end
print("Main script execution")
task.spawn(doBackgroundTask)
print("Main script continues immediately after launching background task")
Roblox Studio
task.delay
local function delayedTask()
print("Delayed task executed after 5 seconds")
end
print("Main script execution")
task.delay(5, delayedTask) -- Delay execution of delayedTask by 5 seconds
print("Main script continues immediately after scheduling delayed task")
Roblox Studio
task.wait
local function waitForSomeTime()
print("Wait starting")
task.wait(5) -- Pauses this function, not the entire script, for 5 seconds
print("Wait ended after 5 seconds")
end
print("Main script execution")
task.spawn(waitForSomeTime)
print("Main script continues immediately, while waitForSomeTime pauses internally")
Roblox Studio
Se você achou este tutorial útil e gostaria de apoiar meu trabalho, por favor, considere me comprar um café.
Muito obrigado pelo seu apoio!
Me compre um café