Visual Basic.NET - Ejecutar un método cada cierto tiempo

   
Vista:
Imágen de perfil de Rubhenn

Ejecutar un método cada cierto tiempo

Publicado por Rubhenn (7 intervenciones) el 14/08/2015 19:03:43
Que tal, los molesto de nuevo:

Tengo un método que se ejecuta para poder guardar en una tabla de mi base de datos los correos recibidos en un e-mail. Lo que me gustaría hacer es que ese método se ejecute automáticamente cada 10 minutos.

Pudieran por favor ayudarme con esto.!? Qué es necesario hacer?

Estoy trabajando con Visual Basic 2013 con conexión a la base de datos en SQL 6.5
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Rubhenn

Ejecutar un método cada cierto tiempo

Publicado por Rubhenn (7 intervenciones) el 15/08/2015 00:44:41
Hola de nuevo, no se si me explique correctamente. Va de nuevo, quizás un poco mas claro

Lo que quiero es guardar la hora que se ejecuto por ultima vez mi método y comparar con el tiempo actual de ejecución. Si ya pasaron 10 minutos de la última vez, volver a ejecutar el método. Esto es para tener un informe actualizado siempre de diversos correos que me llegan al email.

Saludos..espero haya quedado un poco más claro.

Esto es en Visual Basic 2013.

Gracias de antemano.!!
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Ejecutar un método cada cierto tiempo

Publicado por Miguel (346 intervenciones) el 15/08/2015 01:37:20
Hola,

Con un BackgroundWorker podrías hacer esto. Haces un bucle (Do While/Until) y esperas a que transcurra el tiempo (10 min.) con un System.Threading.Thread.Sleep(milisegundos), y luego ejecutas tu método.


Saludos,
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
2
Comentar
Imágen de perfil de Rubhenn

Ejecutar un método cada cierto tiempo

Publicado por Rubhenn (7 intervenciones) el 19/08/2015 01:22:14
Ya quedo..ejjejee..

Solo era utilizar la función DateDiff..muchas gracias por tomarse el tiempo de leer mi post. Dejo lo que hice

1
2
3
4
5
6
7
8
9
10
11
12
13
Dim UltimaVez As Date = Now ' Utilizas dos variables tipo Date y le asignas el tiempo actual del sistema
 
Dim HoraActual As Date = Now
 
Const Minutos = 9 'Declaras el limite de tiempo
 
 
If DateDiff(DateInterval.Minute, UltimaVez, HoraActual) > Minutos Then ' Minutos está definido igual a 9 entonces al hacer la comparación y esta sea mayor a Minutos ejecutara el método.
 
     '-- Aqui va el método a ejecutar
     UltimaVez = Now 'Regresas UltimaVez al tiempo actual para reiniciar el proceso
 
End If

Muchas gracias Miguel por tu respuesta. Saludos..
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar