我想创建一个类的实例(它 extends )并在每 5 分钟后Asynctask
调用它的方法。execute()
为此,我尝试调用方法Thread.sleep(5*60*1000))
,onPostExecute()
然后创建该类的新实例。代码如下。
public class MyAsyncTask extends AsyncTask<String, Void, String>
{
protected String doInBackground(String... arg0) {
//whatever I want to do
}
protected void onPostExecute(String result) {
Thread.sleep(5*60*1000);
new MyAsyncTask().execute("my String");
}
}
但是使用此代码会阻止 UI 5 分钟。我在某处读到其中的代码onPostExecute()
是在 UI 线程中执行的。这解释了 UI 被阻止的原因。但是,如何在AsyncTask
不阻塞 UI 的情况下创建一个新实例?
有什么建议么 ?谢谢。