Не понимаю этот тезис вообще. Зачем писать ещё более сложный код?
Давно UI андроид и иос прилок на Си пишут?
Почему не может быть каких-то промежуточных решений - не очень сложных, но и при этом достаточно гибких?
понятно что, в современном мире на тонких клиентах писать семафоры - это оверхед. Ничего такого сложного там не делается по сути, чтобы шарить память между потоками и выйграть в перформансе.