gpt4 book ai didi

android - 如何在不阻塞 Activity 的情况下在 AsyncTask 中创建 while(true)?

转载 作者:塔克拉玛干 更新时间:2023-11-02 22:38:25 27 4
gpt4 key购买 nike

我创建了一个 AsyncTask,我必须在我的 AsyncTask 上创建一个 while(true)

如何在不阻塞的情况下在我的 Activity 类中处理按钮点击时执行这样的无限循环?

最佳答案

其他人怎么说没有中断条件的无限循环不是很好的用户体验。首先为您的 AsyncTask 获取一个实例:

 PostTask pt = new PostTask(this);
pt.execute();

在你的 doInBackground() 中试试这个:

while(!this.isCancelled()){
// doyourjobhere


}

如果应用程序被用户关闭,AsyncTask 必须在您的 onPause() 中停止。

@Override
public void onPause(){
pt.cancel(false);
}

AsyncTask.cancel(boolean)isCancelled() 设置为 true,调用 AsyncTask.onCanceled() 方法而不是 onPostExecute() 并且可以为了您自己的目的而被覆盖。

如果您不喜欢这样,请将您的任务放在服务中。

关于android - 如何在不阻塞 Activity 的情况下在 AsyncTask 中创建 while(true)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14461548/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com