假设我有一个产生2个线程的服务。 这两个线程可以访问任何服务的方法。 有什么方法可以告诉(在一个方法中)哪个线程调用了它?
我知道Android中的进程存在这样的机制:例如我可以使用getCallingUid,但是线程也有类似的东西吗?
谢谢
答案 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?
,该怎么办?