Java-Android中的多线程

我的问题是,我有一个活动,并在那里我想采取的结果

read_list方法.但是read_list方法需要很长时间才能完成,

因此我想创建一个新的Thread,然后运行此方法

将其返回主活动.我知道我可以做类似的smt

AsyncTask,但是现在我想用这种方式来做.

  public class Read<T> implements Runnable(){

    Thread t;
    read(){
         t = new Thread(this);
         t.start();
    }


    public void run(){

       read_list();
    }


    public ArrayList<T> read_list(){

       ..........
       return ArrayList<T>
    }



 }

主要活动:

 public Name extends Activity{

    .
    .
    .

    Read<Data> read = new Read<Data>();
    read.read_list();

 }

问题:使用上述代码,我将激活一个新线程来执行
read_list方法?或者该方法将在主线程上执行?

最佳答案 新线程不会被执行,但是调用read.read()应该启动一个新线程

顺便说一句.我更喜欢使用匿名类,imho它更容易阅读:

public Name<T> extends Activity{
  .
  .
  .
  private List<T> stuff;

  Runnable read = new Runnable(){
    public void run(){
      ...
      stuff = new ArrayList<T>(..);
    }
  };
  read.start();
}
点赞