如何在Android中重复线程

如何在Android中重复线程,android,Android,我尝试实现一个运行在主线程旁边的线程,该线程在20秒内执行,我需要在再次完成线程后以连续方式再次执行 使用此代码,线程只执行一次,但如何才能再次运行 public class MainActivity extends AppCompatActivity { . . @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate( savedInstanceState ); setCont

我尝试实现一个运行在主线程旁边的
线程
,该线程在20秒内执行
,我需要在再次完成
线程后以连续方式再次执行

使用此代码,线程只执行一次,但如何才能再次运行

public class MainActivity extends AppCompatActivity {
.
.

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate( savedInstanceState );
    setContentView( R.layout.activity_main );
.
.
    treadTimer();
}

private void treadTimer(){
    new Thread(new Runnable() {
        @Override
        public void run() {
            for(int i=1; i<= 20; i++){
                UnSegundo();
            }
            runOnUiThread(new Runnable() {
                @Override
                public void run() {
                    Toast.makeText(getBaseContext(), "Tarea Larga Finalizada", Toast.LENGTH_SHORT).show();
                }
            });
        }
    }).start();
}

private void UnSegundo(){
    try{
        Thread.sleep(1000);
    }catch (InterruptedException e){}
  }
}
public类MainActivity扩展了AppCompatActivity{
.
.
@凌驾
创建时受保护的void(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
.
.
踏板计时器();
}
私有无效计时器(){
新线程(newrunnable()){
@凌驾
公开募捐{

对于(inti=1;i这是一种方法

Handler handler = new Handler();

private Runnable runnable = new Runnable() {
    @override
    public void run() {
        doYourThing();
        handler.post(this, 20000);
    }
}

handler.post(runnable);

Logic
您的代码有错误,请您调整一下好吗