RU/2: Форум. Общение пользователей и разработчиков OS/2 (eCS). : Ответить на сообщение
Имя:
e-mail:
FIDO:
Home page:
сохранить данные о вас
Тема:
> > > Странную вещь обнаружил работая под VAC 3.08 > > > Есть сервер, запускающий нитки обслуживания. Эти нитки запускают расчетные нитки, которые раз в секунду используют malloc для резервирования небольшого количества памяти. > > > Запускаем под отладчиком . > > > коннектимся. стартуем расчетную нитку - все ок. > > > еще коннектимся вторым клиентом и запускаем все как раньше - имеем на вызове malloc системный иксепшн - XCPT_GUARD_PAGE_VIOLATION > > > Это не смертельно, но противно . обидно за трату ресурса и, совершенно непонятно. > > > Увеличение стека нитки не помогает. > > > Может кто разбирался с этим? > > > > у ниццка в socksd тоже самое наблюдается. > > насколько я понимаю, вакк коммитит только первую страницу стека. > > остальные коммитятся по обращению к ним - когда и возникает это самое эхепшен. > > > > можно ли это изменить какими нибуть настройками - надо читать в доке. > > я с вами всеми удивляюся. > Прочитать http://os2.in.ru/rdm2/articles/highmem/index.html - не судьба ? > или в доке про работу с пользовательскими кучами > > > вот в VP например прямо при создании нити можно указывать должен ли ее стек > > быть закоммичен или нет. > > > > попутно. > > раз у тебя очень схожая задача - есть огромная просьба, проследить, > > течет ли твоя программа памятью за скажем 10 суток работы. > > потому что упомянутый выше socksd именно течет, причем применяя все инструменты > > отладки мы с ниццком до сих пор не можем выяснить причину :( > > поттекает редко и небольшими порциями, кажется именно когда несколько параллельно > > ниток обслуживают запросы. так сразу и не заметишь - но за десятки суток запросто > > утекает на мегабайты. > > > Вопрос - откуда следует что утекает, а не получается фрагментация кучи ? В последнем случае один из простейших способов борьбы - организация нескольких куч - типа для мелких, средних и больших объектов. Плюс стандандартная куча для бункций бибилотеки
_, _, _, _, _ _, _,_
(_ | / \ |\ | / \ |_/
, ) | , \ / | \| \ / | \
~ ~~~ ~ ~ ~ ~ ~ ~
Programmed by
Dmitri Maximovich
,
Dmitry I. Platonoff
,
Eugen Kuleshov
.
25.09.99 (c) 1999,
RU/2
. All rights reserved.
Rewritten by
Dmitry Ban
. All rights ignored.