Android编程的线程类中不推荐使用的方法

时间:2013-05-30 09:04:14

标签: java android thread-safety

我正在查看Android API参考文档,并了解到Thread类中的某些方法因各种原因而被弃用。以下是一些摘录:


public final void suspend()

在API级别1中添加 此方法在API级别1中已弃用。 可能导致死锁。


public final void resume()

在API级别1中添加 此方法在API级别1中已弃用。 与弃用方法suspend()

一起使用

public final synchronized void stop(Throwable throwable)

在API级别1中添加 此方法在API级别1中已弃用。 因为以这种方式停止线程是不安全的,并且可能使您的应用程序和VM处于不可预测的状态。


public final void stop()

在API级别1中添加 此方法在API级别1中已弃用。 因为以这种方式停止线程是不安全的,并且可能使您的应用程序和VM处于不可预测的状态。

请求接收者线程停止并抛出ThreadDeath。线程如果被挂起则恢复,如果它正在休眠则被唤醒,以便它可以继续抛出ThreadDeath。


Thread类也是Java标准API的一部分,从我的Java编程背景来看,我之前遇到过这些方法,但Sun从未在标准Java API中提出过任何关于弃用的注意事项。

纯Java程序(不含Android环境)是否应忽略这些警告并继续使用这些方法?感谢。

1 个答案:

答案 0 :(得分:0)

这些方法已被弃用,因为它们可能导致死锁,有时会导致意外行为。

有关不同问题的详细说明,请参阅here