@Override public void run(){
  if (DEBUG)   Log.d(TAG,"Camera thread start");
  Looper.prepare();
synchronized (mReadyFence) {
    mHandler=new CameraHandler(this);
    mIsRunning=true;
    mReadyFence.notify();
  }
  Looper.loop();
  if (DEBUG)   Log.d(TAG,"Camera thread finish");
synchronized (mReadyFence) {
    mHandler=null;
    mIsRunning=false;
  }
}

@ Override public void run ( ) { if ( DEBUG ) Log . d ( TAG , "Camera thread start" ) ; Looper . prepare ( ) ; synchronized ( mReadyFence ) { mHandler = new CameraHandler ( this ) ; mIsRunning = true ; mReadyFence . notify ( ) ; } Looper . loop ( ) ; if ( DEBUG ) Log . d ( TAG , "Camera thread finish" ) ; synchronized ( mReadyFence ) { mHandler = null ; mIsRunning = false ; } }
message loop prepare looper and create handler for this thread
