Поток (или поток выполнения) — это легковесная единица выполнения, которая работает внутри Процесс ОС. Все потоки в пределах одного процесса делят между собой адресное пространство и ресурсы этого процесса, что позволяет им легко обмениваться данными и синхронизироваться.
Каждый поток имеет свой собственный stack, счетчик команд и набор регистров, но разделяет с другими потоками того же Процесс ОС кучу и глобальные переменные.