Что делать, если появляется непонятная ошибка после запуска c++ кода?
Пытаться понять её -- универсальный рецепт.
это исходный код.
thread my_thread1(&connecter);
if(connfd == true)
В этом месте две ошибки. Первая -- ты сравниваешь
int connfd
с
bool true
, а вторая -- ты делаешь это
без уважения потоконебезопасным способом. Прямо скажем, у тебя тут гонка между
main
и
connecter
. Когда ты эту гонку исправишь, жизнь твоя, скорее всего, наладится. Непонятно, правда, зачем ты вызываешь
accept
в параллельном потоке вместо того, чтобы сделать это синхронно, прямо в
main
.