Showing posts with label TIMEOUT. Show all posts
Showing posts with label TIMEOUT. Show all posts

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.