Saturday, April 13, 2013

MANEJO DE DELAY EN JAVA

Muchas veces en nuestras aplicaciones necesitamos realizar un Delay de tiempo para realizar la respuesta de algunos aplicativos a los que nos conectamos, entre otras cosas, en esas situaciones muchos de nosotros hemos manejado algo ya conocido que es apoyarnos en al clase Thread y hacer un Thread.sleep. Pero lo que muchos no saben es que existe otra clase para el manejo de Delay de tiempo que se llama: java.util.concurrent.TimeUnit.

La diferencia en si es que: TimeUnit su manejo es mucho más facil y rápido pero lo que no saben es que esta clase: TimeUnit , internamente se apoya y hace un Thread.sleep.

Aquí un ejemplo de como trabajan ambas clases:

 import java.util.concurrent.TimeUnit;

/**
 * TestStopTiempo
 * @author JAVAMAN
 */
 public class TestStopTiempo{

    @SuppressWarnings( "unused" )
    public static void main( String[] argumentos ) throws InterruptedException{
        
        //FORMA #1:
        System.out.println( "--------- INICIO 'DELAY JAVA' [Thread.sleep] --------- " );
       
        int milisegundo = 1000;
        int segundo     = (1  * milisegundo);
        int minuto      = (60 * segundo);
        int hora        = (60 * minuto);
        int dia         = (24 * hora);
       
        Thread.sleep( 10 * segundo );
       
        //FORMA #2:
        System.out.println( "--------- INICIO '
DELAY JAVA' [TimeUnit] --------- " );
       
        int tiempo = 10;
 
        TimeUnit.SECONDS.sleep( tiempo );  
        //TimeUnit.MINUTES.sleep( tiempo );
        //TimeUnit.HOURS.sleep(   tiempo );
        //TimeUnit.DAYS.sleep(    tiempo ); 
    }
   
 }


Es todo saludos.


1 comment:

avoidsnn said...

Me gusta ,oy cuéntame por privado al
go de internet ,algo de hibernate
que dicen qu es muy puñetero pero l
usan para trabajr