Ответ
Псевдопараллельность — это модель выполнения, при которой несколько задач выполняются последовательно, но создаётся иллюзия параллельной работы за счёт быстрого переключения между ними.
В Go это реализуется через горутины и планировщик (scheduler), который распределяет их выполнение на ограниченном числе потоков ОС.
Пример:
func main() {
go task("A") // запуск горутины
go task("B")
time.Sleep(time.Second) // ждём завершения (для примера)
}
func task(name string) {
for i := 0; i < 3; i++ {
fmt.Println(name, ":", i)
time.Sleep(100 * time.Millisecond)
}
}
Вывод может быть перемешан (A:0, B:0, A:1...), хотя физически горутины выполняются на одном ядре. Это и есть псевдопараллельность.