안녕하세요?
다음 중 어느 것이 배터리 소모(혹은 리소스 소모) 적다고 볼수 있습니까?

1) Main에서, 즉 onCreate()에서 Handler를 생성하여 이 Handler에서 일정한 시간 간격을 두고 특정 작업을 반복수행하는 경우와(시간 간격은 5초 간격으로 잡을 경우)

  public void onCreate(Bundle savedInstanceState) {
      //앞 부분 생략
      mHandler.sendEmptyMessage(30);
  }

  Handler mHandler = new Handler(){
   public void handleMessage(Message msg){
        //여기서 특정 기능 수행

        mHandler.sendEmptyMessageDelayed(30, 5000);
   }
  };



2) Main에서, 즉 onCreate()에서 작업 Thread(custom 쓰레드)를 생성하여 이 Thread에서 while 문을 통해서 일정한 시간 간격을 두고 특정 작업을 반복 수행하는 경우(시간 간격은 5초 간격으로 잡을 경우),

    public void onCreate(Bundle savedInstanceState) {
        //앞 부분 생략        
        MyThread th = new MyThread();
        th.start();
    }
    
    class MyThread extends Thread {
     public void run(){
       while(true){
             //여기서 특정 기능 수행

            try {
              Thread.sleep(5000);
            }catch (InterruptedException e){}
       }//while
     }
    }

위 둘 중 어느 것이 배터리, 혹은 리소스 소모가 적다고 볼수 있습니까?
감사합니다^^


profile

가끔은 뒤도 돌아보자... 이 만큼 왔구나...!