ImageView can = ((ImageView)findViewById(R.id.ImageView01));
                while(true){
                        int res=tp2.runa("START");
                        //Bitmap bitmap2 =BitmapFactory.decodeResource( con.getResources(), R.drawable.abc );
                        //((ImageView)findViewById(R.id.ImageView01)).setImageBitmap(bitmap2);
                        int pix[]=new int[arrbuf.length/3]; 
                        Bitmap bitmap = Bitmap.createBitmap(160, 120, Bitmap.Config.ARGB_8888);
                        int count=0;

                                for (int i=0; i<arrbuf.length/3; i++) {
                                    pix[i] |= ((0xFF) << 24) & 0xFF000000;
                                    pix[i] |= (((int) arrbuf[count++]) << 16) & 0xFF0000;
                                    pix[i] |= (((int) arrbuf[count++]) << 8) & 0xFF00;
                                    pix[i] |= (((int) arrbuf[count++])) & 0xFF;
                                }
                               
                                bitmap.setPixels(pix, 0, 160, 0, 0, 160, 120);
                           
                        can.setImageBitmap(bitmap);
                }

tp2.runa는 네트워크로부터 영상을 얻어오는 소스이고  내부 for문은 이 데이터를 pixel값으로 변환하여
setpixels로 bitmap을 채운후 setimagebitmap을 이용하여 imageview에 그림을 출력하는 소스입니다

그런데 while문이 없이 하나의 이미지만 받아오면 정상적으로 출력이되지만 while문만 넣으면
아무것도 화면에 출력되지 않더군요... while에 10번이나 100번만 화면에 나오라고 하면
가장 마지막 영상만 화면에 나오게 됩니다... can.invalidate등을 이용해도 그대로구요..
어떻게 이것을 해결할 수 있을까요???결국은 surfaceview인가를 사용해야 하는것인가요???