2016-05-25 6 views

Antwort

1

Um die zugrundeliegende Plattform zu abstrahieren, sitzt der jvm auf dem Betriebssystem. W32API ist die OS-Schnittstelle/Bibliothek, die von Java implementiert wird und die Kernel32.INSTANCE.GetCurrentThreadId() gibt die ID des Betriebssystems Thread ruft diese Zeile. Java-Sprache bietet Mechanismen für Multithreading. Die Thread.currentThread().getId() gibt Ihnen die ID des jvm-Threads. Abhängig von der Implementierung von W32API-, von der Kernel32 ein ist - und möglicherweise einigen anderen Faktoren können die OS-Threads den VM-Threads zugeordnet werden oder nicht.

+0

Danke für die Antwort – Jobin

1
Kernel32.INSTANCE.GetCurrentThreadId(); 

Ruft die Thread-Kennung des aufrufenden Threads. Dies ist für native Threads in Win32. Sie sind vom Betriebssystem geplant.

Thread.currentThread().getId(); 

Ruft die ID des Java-Threads ab. Sie sind vom jvm geplant. Ob sie direkt auf native Threads abgebildet werden oder nicht, hängt vom jvm ab. (Aber normalerweise sind sie)

+0

Danke für die Antwort – Jobin