停止不抛出异常Android的线程

Posted

技术标签:

【中文标题】停止不抛出异常Android的线程【英文标题】:Stopping thread that doesnt throw Exception Android 【发布时间】:2011-05-28 16:06:57 【问题描述】:

所以我从手机获取位置修复,如果它永远找不到位置或花费太长时间,就会出现问题。下面是加载屏幕的示例代码

我如何设置一个计时器来停止线程(加载屏幕)一旦经过一定的时间?

lm.requestLocationUpdates(LocationManager.NETWORK_PROVIDER,

1000, 10f, 这个);

处理程序处理程序 = 新处理程序(); Runnable showWaitDialog = new Runnable() int等待= 0; @覆盖 公共无效运行() while (loc == null)


// After receiving first GPS Fix dismiss the Progress Dialog
dialog.dismiss();

;

// 创建一个对话框让用户知道我们正在等待 GPS 定位 dialog = ProgressDialog.show(Weather.this, "请稍候...", "正在检索 GPS 数据...", true);

线程 t = 新线程(showWaitDialog); t.start();

【问题讨论】:

【参考方案1】:

如果你想停止一个线程而不是使用普通线程来做后台作业,请使用 android sdk 的AsyncTask,在那里你可以找到一个cancel()

【讨论】:

谢谢你,这正是我正在寻找的带有取消按钮的加载屏幕。如果其他人有同样的问题,我发现这篇文章。 labs.makemachine.net/2010/05/android-asynctask-example

以上是关于停止不抛出异常Android的线程的主要内容,如果未能解决你的问题,请参考以下文章

为啥设置 DataSource 时 ComboBox 不抛出异常?

为啥 JPA 重复持久方法不抛出异常?

回滚而不抛出异常?

C++ STL栈问题:为啥栈为空时pop()不抛出异常?

如何不抛出一般指定的异常?

H2 不保存价值,不抛出任何异常