no se puede reanudar una corrutina muerta
Algo intentó continuar un trabajo que ya había terminado o ya se había caído. Casi siempre hay un error DE VERDAD encima de este.
Haz esto primero
Sube y arregla el error de arriba; este suele irse con él.
Qué significa
Algo intentó continuar una corrutina que ya terminó o que ya dio error. En FiveM esto casi siempre es el runtime informando de un efecto en cadena: la corrutina murió por un error que hubo dentro, y este es el SEGUNDO mensaje.
Qué lo provoca
Ordenado por la frecuencia con la que es la respuesta.
- 1
Un error anterior mató la corrutina
Subí en la consola. Hay un error de verdad encima de este, y es el que hay que arreglar.
- 2
Un callback guardado y llamado dos veces
Un callback de oxmysql o de ox_lib invocado una segunda vez: la primera reanudación lo terminó, la segunda lo encuentra muerto.
- 3
Esperar dentro de un manejador que ya volvió
MySQL.query.awaitdentro de un callback cuyo padre ya terminó. - 4
Ceder el control fuera de un hilo
Wait()a nivel de archivo, o dentro de una función normal llamada desde un contexto que no es un hilo. FiveM informa «attempt to yield from outside a coroutine».
Cómo saber cuál es el tuyo
Mirá lo que hay ENCIMA de esta línea en la consola. Si hay cualquier otro error, arreglá ese primero y este normalmente desaparece con él. Si este es el único mensaje, estás cediendo el control en algún sitio donde no hay corrutina.
Dónde mirar
La traza que hay debajo de este mensaje, y el error que hay encima.
Cómo arreglarlo
Todo lo que espere tiene que estar dentro de un hilo:
-- mal: un Wait a nivel de archivo
Wait(1000)
-- bien
CreateThread(function()
Wait(1000)
end)Y los callbacks se disparan una sola vez: protegete de una segunda llamada:
local done = false
someLib.request(function(result)
if done then return end
done = true
end)¿Sigues atascado en tu propio código?
Esta página es lo que suele significar este error. Pega tu consola en Server Fixer y ordenará todo lo que haya en ella y te dirá qué hacer primero; y si prefieres no tocarlo, ORBIE puede reparar el script y devolverte el recurso listo para soltar.
bug_reportAbrir el Server FixerPara este tipo de error, el Script Optimizer lee el script y repara el código que hay detrás.