Foro de elhacker.net

Programación => .NET (C#, VB.NET, ASP) => Mensaje iniciado por: Skeletron en 8 Febrero 2010, 08:11 am



Título: Error: Se excedió el tiempo de espera de la operación
Publicado por: Skeletron en 8 Febrero 2010, 08:11 am
Hola gente..
Estoy teniendo un problema:
My.Computer.Network.DownloadFile(link, "C:\Picdex\Imagenes\" & ID)

En esa linea, tengo la variable LINK.. lo que hace, es decargar un archivo (digamos que un archivo aleatorio, de una web aleatoria)
Con algunas webs.. muy pocas... pasa lo siguiente:
queda como 15 segundos ahí "descargando", pero luego salta un error: "Se excedió el tiempo de espera de la operación"

Realmente mi problema radica en que me esta haciendo perder mucho tiempo de procesamiento a mis hilos...
Hay alguna manera de hacer que en vez de esperar como 30 segundos, solo espere 10? o anticiparme al problema (por ejemplo: si el archivo no comienza a descargarse rapido, que lo deje)

Gracias!


Título: Re: Error: Se excedió el tiempo de espera de la operación
Publicado por: Keyen Night en 8 Febrero 2010, 15:40 pm
La forma que se me ocurre de detectar que no inicia rapido es que coloques un Timer con interval por ejemplo 10seg (10.000) que será el tiempo max para iniciar la descarga, en el sub tick del timer revisar el peso del archivo si es 0 a los diez segundos entonces detienes el hilo...


Título: Re: Error: Se excedió el tiempo de espera de la operación
Publicado por: Skeletron en 8 Febrero 2010, 16:49 pm
SI... Voy a tener que implementar algo por el estilo.
Luego te cuento


Título: Re: Error: Se excedió el tiempo de espera de la operación
Publicado por: Skeletron en 8 Febrero 2010, 17:00 pm
Este error sucede cuando dejo al programa trabajando durante mucho tiempo..
Como si en algun momento se cansara de descargar y comenzaran todos los hilos a dar este error (ya sean los hilos que descargar las imagenes a mi pc, como tambien los que descargan el codigo fuente de diversas webs)

La cuestion, es que si detengo el programa, y lo reinicio.. todo comienza a funcionar nuevamente...
Por ende, no creo que sea un problema de los archivos que estan en internet, o de las mismas webs, sino, un problema del programa..


Título: Re: Error: Se excedió el tiempo de espera de la operación
Publicado por: Keyen Night en 9 Febrero 2010, 04:11 am
Entonces esto vendría siendo más o menos otro error del visual :( al parecer (por eso será que algunos lo odian tanto :huh:); Yo te recomiendo una solución que nosé si es la adecuada pero teóricamente funciona, cada X tiempo (no mucho) pon un timer a recrear el hilo y en un list de string guardas los archivos que ya se han descargado de tal forma que el hilo revise el list si ya ha descargado antes el archivo que está por descarga y si es así que se lo salte de está forma los hilos núnca se cansarían por decirlo así.

A por cierto con recrear me refiero a:

Código
  1. X.Abort()
  2. X = Nothing
  3. X = New Thread(Address Of Y)


Título: Re: Error: Se excedió el tiempo de espera de la operación
Publicado por: Skeletron en 9 Febrero 2010, 05:25 am
Sabes que tio, lo sulucione "reiniciando" antes de la descarga, el WEBCLIENT..

O sea, antes usaba el mismo webclient para descargar como 100000000 webs... ahora hago un:
client = new webclient
client.downdloadstring(web)

Con eso se soluciono el problema.


Título: Re: Error: Se excedió el tiempo de espera de la operación
Publicado por: Skeletron en 9 Febrero 2010, 05:32 am
Ups..
Parece que no se soluciono por completo..
Ahora simplemente lo hace cada menos tiempo..
Parece que la solucion esta en manipular mejor las descargas...