2013-07-25 30 views
0

我想在一个不同类的类中使用创建的线程。 这是创建一个线程的代码:如何使用在不同类中的一个类中创建的线程?

 Thread background = new Thread(new Runnable() { 
      public void run() { 
       Log.d ("Thread", "Thread has started"); 
       processImage(data, size.width, size.height, camera); 
       camera.addCallbackBuffer(data); 
       Log.d ("Thread", "Thread has ended"); 
      } 
     }); 

     if (!background.isAlive()) 
     { 
      background.setPriority (10); 
      background.start(); 
     } 

现在,当我在拍照模式下,我想回去,我想主线程等待,直到线程完成这样做的工作。所以我想,如果我在SurfaceView类的surfaceDestroyed()函数中添加background.join(),我应该能够得到期望的结果。但问题是,该线程不是在SurfaceView类中创建的。那么我该怎么做?如何在SurfaceView课程中使用该特定线程?

+0

你不能简单地将它作为Thread参数传递给surfaceDestroyed()吗? –

回答

0

也许你可以将background存储在一个静态变量中并以这种方式访问​​它?

相关问题