а про то что ты пишешь это именно работа планировщика в ОС
Я как-то задавался вопросом, а вообще как процессор переключается с потока на поток (программные), если у него соответствующей инструкции просто-напросто нет? Контекст сохранить-восстановить до хуя делов, а инструкции для этого нет, можно конечно там соответствующими командами посохранять регистры, но он как-то по-другому работает. То есть через столько-то инструкций идёт переключение потоков АВТОМАТОМ, невидимая какая-то инструкция что ли срабатывает, хотя если мы возьмём ассемблерный листинг, такой инструкции не найдём, третий раз пишу. С другой стороны, я щас подумал, большие листинги разве можно глазами посмотреть? Нет. А маленькие выполняются на раз-два, в контексте непрерывающегося потока.