![]() |
Модераторы: xvr |
![]() ![]() ![]() |
|
REZiaMIX |
|
||||||||||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 346 Регистрация: 3.11.2007 Репутация: нет Всего: 4 |
Вызываю:
В доке указано:
При этом указано:
После вызова кода:
Показывает именно данный объем. 134516196 ~= 128 мб; Почему он читает столько объема, если я указываю rdBufferLen равный 10кбайтам(ну не могу же я на каждого клиента держать такой буффер!) ? -------------------- ![]() |
||||||||||
|
|||||||||||
boostcoder |
|
|||
![]() pattern`щик ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 5458 Регистрация: 1.4.2010 Репутация: 16 Всего: 110 |
попробуй так:
и покажи значения size и rd. Это сообщение отредактировал(а) boostcoder - 9.8.2010, 17:40 |
|||
|
||||
REZiaMIX |
|
||||||||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 346 Регистрация: 3.11.2007 Репутация: нет Всего: 4 |
-------------------- ![]() |
||||||||
|
|||||||||
boostcoder |
|
|||
![]() pattern`щик ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 5458 Регистрация: 1.4.2010 Репутация: 16 Всего: 110 |
REZiaMIX, вопросы?
|
|||
|
||||
REZiaMIX |
|
||||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 346 Регистрация: 3.11.2007 Репутация: нет Всего: 4 |
Ну ведь по сути я указываю, что размер буффера - 1024*10, т.е. 10кб. А заместо этих 10ти кб мне выдает 134516196 байтов. В случае с:
я выделяю буффер размером size: 134549472, что многовато. Только тогда мне bufferevent_read возвращает нужное кол-во байт. Но ведь если я укажу size равное 134549472, и предоставлю буфер размером 10кб , то это будет ошибкой. Будет переполнение. А выделять такое кол-во памяти на клиента я не могу. -------------------- ![]() |
||||
|
|||||
boostcoder |
|
||||
![]() pattern`щик ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 5458 Регистрация: 1.4.2010 Репутация: 16 Всего: 110 |
по моему - нет. попробуйте так:
|
||||
|
|||||
REZiaMIX |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 346 Регистрация: 3.11.2007 Репутация: нет Всего: 4 |
А если размер буффера меньше EVBUFFER_LENGTH(bev->input). EVBUFFER_LENGTH(bev->input) в моем случае ~128мб, как функция bufferevent_read узнает размер памяти по указателю buffer? А если прийдет больше чем [нужное кол-во байт]? будет переполнение. -------------------- ![]() |
|||
|
||||
MAKCim |
|
|||
![]() Воін дZэна ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 5644 Регистрация: 10.12.2005 Где: Менск, РБ Репутация: 84 Всего: 207 |
правильно так
<буфер> - _твой_ буфер <рфзмер буфера> - собственно, размер _твоего_ буфера -------------------- Ах, у елі, ах, у ёлкі, ах, у елі злыя волкі © |
|||
|
||||
![]() ![]() ![]() |
Правила форума "С/С++: Программирование под Unix/Linux" | |
|
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, xvr. |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | C/C++: Программирование под Unix/Linux | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |