В настоящее время я работаю над беспроводным сетевым приложением на С++, и он подходит к тому моменту, когда я хочу многопользовательскую часть программного обеспечения в рамках одного процесса, вместо того, чтобы использовать их в отдельных процессах. Теоретически, я понимаю многопоточность, но я до сих пор не погружаюсь практически.
Что должен знать каждый программист при написании многопоточного кода на С++?