170 похожих чатов

Почему вне? может ли быть и внутри? Типо после push_back

сбилась ссылка

16 ответов

34 просмотра

каким образом?

Дурачок-Глупый Автор вопроса
Alex Travkin
каким образом?

https://pastebin.com/eH6B9Ez2 Даже на одном треде проблемы

потому, что в том куске кода, что ты прислал, лично я проблемы с изменением pfd не вижу. Проблема комплексная, что ты делаешь ВНЕ данной функции и КАК, и то делаешь ВНУТРИ. По куску кода, лично мне, не ясно.

Дурачок-Глупый Автор вопроса
Alex Travkin
потому, что в том куске кода, что ты прислал, личн...

я прислал выше весь кусок кода и где используется fds Больше никто не изменяет

ну как минимум: 34 - строка, цикл по fds. 40 - строка переход в handleClientConnection 48 - строка переход в handleClientInput 82 - строка изменяешь fds через push_back, происходит реаллокация

Дурачок-Глупый Автор вопроса
Alex Travkin
ну как минимум: 34 - строка, цикл по fds. 40 - стр...

не вижу тут конфликтов разве что реаллокация

Дурачок Глупый
не вижу тут конфликтов разве что реаллокация

ты изменяешь вектор по которому итерируешься

Дурачок-Глупый Автор вопроса
Гражданин Котейко
ты изменяешь вектор по которому итерируешься

не совсем poll же копирует себе fds до таймаута?

Дурачок Глупый
не совсем poll же копирует себе fds до таймаута?

for (auto &fd: fds) в теле цикла зовётся handleClientConnection и другие, которые в этот же fds начинают что-то там добавлять/удалять

Дурачок-Глупый Автор вопроса
Дурачок Глупый
не вижу тут конфликтов разве что реаллокация

ну, так реаллокация чё делает? берёт твой кусок памяти и копирует в другое место с запасом

Дурачок Глупый
и как решить проблему?

1000500 вариантов решения, тебе какой?

Дурачок Глупый
и как решить проблему?

не делать вещи, от которых всё портится

Дурачок-Глупый Автор вопроса
Дурачок Глупый
например?)

скопируй вектор, итерируйся по одной копии, модифицируй другую

Дурачок Глупый
например?)

ну 1. Вчитаться и переосмыслить код 2. Передавать по значению 3. Использовать другую структуру данных, которая не перемещает внутрянку(см. list)

Похожие вопросы

Обсуждают сегодня

а через ESC-код ?
Alexey Kulakov
29
30500 за редактор? )
Владимир
47
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
notme
18
У меня есть функция где происходит это: write_bit(buffer, 1); write_bit(buffer, 0); write_bit(buffer, 1); write_bit(buffer, 1); write_bit(buffer, 1); w...
~
13
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
program test; {$mode delphi} procedure proc(v: int32); overload; begin end; procedure proc(v: int64); overload; begin end; var x: uint64; begin proc(x); end. Уж не знаю...
notme
6
Как передать управляющий символ в открытую через CreateProcess консоль? Собсна, есть процедура: procedure TRedirectThread.WriteData(Data: OEMString); var Written: Cardinal;...
Serjone
5
Вот еще странный косяк, подскажите как бороться. Я git clone сделал себе всего embassy и примеры там запускаю. Всё хорошо. Но вот решил в cargo.toml зависимости не как в приме...
Lukutin R2AJP
1
вы делали что-то подобное и как? может есть либы готовые? увидел картинку нокода, где всё линиями соединено и стало интересно попробовать то же в ddl на lua сделать. решил с ч...
Victor
8
Ребят в СИ можно реализовать ООП?
Николай
33
Карта сайта