Java не гарантирует, что поток с высоким приоритетом будет выполнен до низкого приоритета. Высокоприоритетный поток получит больше процессорного времени, но это не означает, что поток с низким приоритетом будет ждать завершения потока с высоким приоритетом. Подводя итог, порядок выполнения потоков будет случайным, независимо от приоритета.