假设我有一个产生 2 个线程的服务。这 2 个线程可以访问任何服务的方法。有什么方法可以告诉(在方法中)哪个线程调用了它?
我知道 Android 中的进程存在这样的机制:例如,我可以使用 getCallingUid,但是线程也有类似的东西吗?
谢谢
假设我有一个产生 2 个线程的服务。这 2 个线程可以访问任何服务的方法。有什么方法可以告诉(在方法中)哪个线程调用了它?
我知道 Android 中的进程存在这样的机制:例如,我可以使用 getCallingUid,但是线程也有类似的东西吗?
谢谢
您可以使用currentThread
方法来获取线程并使用getName
来获取它的名称:
String name = Thread.currentThread().getName();
Log.d("Service", "Called from " + name + " thread");
当您创建创建线程时,您可以在构造函数中指定它的名称。见线程
Thread.currentThread() 将始终传递当前线程。
如果你传入Thread.getId怎么办?