我可以告诉哪个线程称为我的服务方法吗?

时间:2012-11-19 13:12:22

标签: android multithreading

假设我有一个产生2个线程的服务。 这两个线程可以访问任何服务的方法。 有什么方法可以告诉(在一个方法中)哪个线程调用了它?

我知道Android中的进程存在这样的机制:例如我可以使用getCallingUid,但是线程也有类似的东西吗?

谢谢

3 个答案:

答案 0 :(得分:3)

您可以使用currentThread方法获取主题并使用getName获取其名称:

String name = Thread.currentThread().getName();
Log.d("Service", "Called from " + name + " thread");

创建创建线程时,可以在构造函数中指定它的名称。见Thread

答案 1 :(得分:1)

Thread.currentThread()将始终提供当前线程。

答案 2 :(得分:0)

如果您传递Thread.getId

,该怎么办?