Autor
|
Tema: Limitar el tiempo de ejecucion de una funcion. (Leído 4,013 veces)
|
yoelmend
Desconectado
Mensajes: 11
|
Hola a todos esta vez tengo la siguiente duda. Como limitar el tiempo de ejecucion de una funcion? Me explico. Tengo una función que hace una llamada al systema (descarga un archivo por wget) sin embargo hasta que no descarga el archivo el programa no puede seguir caminando y esto me pone en una situacion algo complicada ya que la ejecucion y el tiempo de descarga dependera de la velocidad del internet, el servidor, la conexion etc. Como hacer para que pasado x cantidad de tiempo se deje de ejecutar ese hilo y siga el programa ?
void descargar(){ system("wget http://..........."); }
|
|
|
En línea
|
|
|
|
engel lex
|
puedes usar multihilo y matar el hilo cuando haya excedido el tiempo, o simplemente esperar asincronamente por la respuesta
|
|
|
En línea
|
El problema con la sociedad actualmente radica en que todos creen que tienen el derecho de tener una opinión, y que esa opinión sea validada por todos, cuando lo correcto es que todos tengan derecho a una opinión, siempre y cuando esa opinión pueda ser ignorada, cuestionada, e incluso ser sujeta a burla, particularmente cuando no tiene sentido alguno.
|
|
|
yoelmend
Desconectado
Mensajes: 11
|
Gracias por tu respuesta, lo que no tengo muy claro es como limitar el tiempo de ejecucion, saludos
|
|
|
En línea
|
|
|
|
engel lex
|
así mismo, creas un hilo para la descarga y la aplicación en espera, si el hilo responde rompe la espera, si la espera llega al final, detiene el hilo
|
|
|
En línea
|
El problema con la sociedad actualmente radica en que todos creen que tienen el derecho de tener una opinión, y que esa opinión sea validada por todos, cuando lo correcto es que todos tengan derecho a una opinión, siempre y cuando esa opinión pueda ser ignorada, cuestionada, e incluso ser sujeta a burla, particularmente cuando no tiene sentido alguno.
|
|
|
aurquiel
Desconectado
Mensajes: 32
|
Asi a lo rapido y facil te diria correr un segundo con un sleep de tiempo y cuando termine verifique si el hilo de descarga termino sino mata el hilo y despues el hilo de espera muere tambien.
Es lo mas facil que se me ocurre.
Otra forma mas elaborada seria obtener el tiempo del sistema y verficar cuando pase de cierto valor.
Igual en ambos casos necesitarias dos hilos uno que descargue y otro que chequee el tiempo como dijeron mas arriba de mi comentario
|
|
|
En línea
|
|
|
|
ivancea96
Desconectado
Mensajes: 3.412
ASMático
|
¿No tiene wget la opción de ponerle timeout?
Forzar un hilo a terminar debería ser la última opción.
|
|
|
En línea
|
|
|
|
engel lex
|
¿No tiene wget la opción de ponerle timeout?
Forzar un hilo a terminar debería ser la última opción.
Creo que wget no tienen timeout de descarga, es decir, si algo falla si, pero si la descarga está en camino, no
|
|
|
En línea
|
El problema con la sociedad actualmente radica en que todos creen que tienen el derecho de tener una opinión, y que esa opinión sea validada por todos, cuando lo correcto es que todos tengan derecho a una opinión, siempre y cuando esa opinión pueda ser ignorada, cuestionada, e incluso ser sujeta a burla, particularmente cuando no tiene sentido alguno.
|
|
|
|
Mensajes similares |
|
Asunto |
Iniciado por |
Respuestas |
Vistas |
Último mensaje |
|
|
Limitar programa con tiempo ?
.NET (C#, VB.NET, ASP)
|
luis456
|
5
|
3,112
|
21 Noviembre 2013, 13:43 pm
por Eleкtro
|
|
|
Modificar código en tiempo de ejecución en función de la versión de python
Scripting
|
SARGE553413
|
1
|
2,756
|
7 Noviembre 2014, 10:19 am
por 1quark1
|
|
|
¿Comprobar la firma de una función P/Invoke en tiempo de ejecución?
.NET (C#, VB.NET, ASP)
|
Eleкtro
|
1
|
2,038
|
17 Junio 2015, 04:02 am
por Eleкtro
|
|
|
como limitar el tiempo de acceso de usuarios a una carpeta compartida?
Redes
|
Synth3tik0
|
1
|
2,340
|
19 Junio 2015, 18:36 pm
por andavid
|
|
|
(Consula) ¿Se puede modificar una función en tiempo de ejecución?
Programación C/C++
|
Seyro97
|
4
|
2,663
|
4 Octubre 2015, 14:31 pm
por Seyro97
|
|