Tengo un caso de uso como el siguiente (en JAVA)
Recibo una solicitud del cliente
E.g: Haz tareas de transmisión de twitter hasta esta fecha.
- Tarea = Twitter streaming
- Palabras clave = {"# hoy", "#apple"}
- Tiempo = hasta el 5 de febrero de 2017.
Lo que hago es, Abro un nuevo hilo en cada solicitud que recibo y comienzo mi tarea que consiste en transmitir tweets y guardarlos en la base de datos.
Lo que quiero hacer es que el subproceso debe detener la transmisión y debe eliminarse después de esta fecha (5 de febrero).
¿Cómo puedo implementar este tipo de caso de uso?
Respuestas
1 para la respuesta № 1Puedes usar el Calendar
clase y comprobar que, por ejemplo,
Calendar c = Calendar.getInstance(TimeZone.getTimeZone(ZoneId.of("CET")));
c.set(Calendar.MONTH, 1)
c.set(Calendar.DAY_OF_MONTH, 5)
c.set(Calendar.HOUR_OF_DAY, 23);
c.set(Calendar.MINUTE, 59);
c.set(Calendar.SECOND, 59);
c.set(Calendar.MILLISECOND, 999);
while(true){
Calendar cal = Calendar.getInstance(TimeZone.getTimeZone(ZoneId.of("CET")));
if(cal.getTime().after(c.getTime()) return;
}