Estoy escribiendo una función que necesita capturar un error que limita la velocidad al hacer ping a una API basada en web.Funciones que no se ejecutan antes de Sys.sleep()
estoy usando tryCatch
a detectar el error, y dentro de esta función se especifica la siguiente función de error:
error=function(e) {
warning(paste(e,"\nWaiting an hour for rate limit to reset..."))
Sys.sleep(3600) # Wait an hour for rate-limit to reset
return(user.info(user, ego.count))
}
La función parece funcionar, pero cuando la comprobación de los registros de salida para el script noto que la mensaje de advertencia no se escribe hasta después de el tiempo de suspensión se ha agotado.
puedo reproducir este comportamiento en la consola R con:
print("Drew sucks")
Sys.sleep(10)
Diez segundos antes de Drew sucks
se imprime en la consola. En mi función, me gustaría proporcionar algunos comentarios al usuario sobre esta larga pausa antes de que ocurra la pausa.
¿Qué está causando este comportamiento?
Una cosa: si se usa 'warning', el usuario puede usar' suprpressWarnings' para no mostrar mensajes. Con esta solución, se necesita otra forma. – Marek