Нет, на машине с несколькими процессорами нет гарантии, что doSomethingB () будет всегда выполняться перед doSomethingA ().Хотя, скорее всего, это произойдет в 99,999999999% случаев.
Я заметил в некоторых ваших комментариях ссылку на "Event Loop".В Java нет нативной концепции Event Loop, как, например, в Node и Javascript.Если у вас есть 4 потока с четырьмя процессорами и вы отправляете четыре задачи, все четыре задачи будут выполняться параллельно.