Здраствуйте, прочел статью, по aio, у меня возник вопрос. При использовании сигналов или нитей для уведомления о завершении, нужно ли хранить структуры которые использовались для вызова? или можно не дожидаясь завершения операции заюзать структуру aiocb снова?
>Здраствуйте, прочел статью, по aio, у меня возник вопрос. При использовании сигналов
>или нитей для уведомления о завершении, нужно ли хранить структуры которые
>использовались для вызова? или можно не дожидаясь завершения операции заюзать структуру
>aiocb снова?
>Тебя результат операции не интересует? Например данные прочитанные не нужны? Зачем тогда их читал? ))
Буфер ввода-вывода ты тоже теряешь, память утекает.
Я записываю хочу, столкнулся с проблемой.
В каждом цикле у меня N операций, выделяю N структур, а как выделить массив указателей на N этих структур незнаю(Второй параметр сист. вызова). Те чтобы одним вызовом инициоровать все операции и потом через поток проверить все ли выполнились.Вот прототип функции из aio.h:
int lio_listio ( int mode , struct aiocb * const [] list , int nent , struct sigevent *sig )Отрывок, где надо выделить память под запросы:
aiocb * aio_request;
aio_request=new aiocb[N];а как теперь дальше? те не могу организовать выделение динамич памяти для aiocb * const [] list.
в статическом варианте это так
struct aiocb *my_list[N];