Dies ist eine sehr allgemeine Frage, also werde ich eine allgemeine Antwort geben.
Java wechselte von grünen Threads zu nativen Threads early in its development. Dies bedeutet nicht, dass sich unter Windows und Linux erstellte Threads anders verhalten, da beide Plattformen native Threads in ihren jeweiligen JVM-Implementierungen verwenden.
Die Thread-Schnittstelle, die Java von jedem Betriebssystem offen gelegt wird, und ähnlich sind die nativen Schnittstellen zum Threading über Pthreads und Windows-Threads sehr ähnlich.
Die größten Unterschiede in Bezug auf Threading auf den beiden Plattformen sind, dass alle Threads unter Linux eine Form des Prozesses sind. Windows behandelt Threads und Prozesse sehr unterschiedlich.
In meiner persönlichen Erfahrung sind native Threads unter Windows etwas leichter und können in Einzelprozessanwendungen etwas besser abschneiden. Entsprechend (und vielleicht auch irrelevant) sind Windows-Prozesse im Vergleich zu ihren Linux-Gegenstücken extrem schwergewichtig.