На главную Наши проекты:
Журнал   ·   Discuz!ML   ·   Wiki   ·   DRKB   ·   Помощь проекту
ПРАВИЛА FAQ Помощь Участники Календарь Избранное RSS
msm.ru
Обратите внимание:
1. Прежде чем начать новую тему или отправить сообщение, убедитесь, что вы не нарушаете правил форума!
2. Обязательно воспользуйтесь поиском. Возможно, Ваш вопрос уже обсуждали. Полезные ссылки приведены ниже.
3. Темы с просьбой выполнить какую-либо работу за автора в этом разделе не обсуждаются.
4. Используйте теги [ code=cpp ] ...текст программы... [ /code ] для выделения текста программы подсветкой.
5. Помните, здесь телепатов нет. Старайтесь формулировать свой вопрос максимально грамотно и чётко: Как правильно задавать вопросы
6. Запрещено отвечать в темы месячной и более давности без веских на то причин.

Полезные ссылки:
user posted image FAQ Сайта (C++) user posted image FAQ Форума user posted image Наши Исходники user posted image Поиск по Разделу user posted image MSDN Library Online (Windows Driver Kit) user posted image Google

Ваше мнение о модераторах: user posted image B.V.
Модераторы: B.V.
  
> Динамическая память
    Пишу многопоточное приложение (прокси-сервер). В процессе его работы возникают конфликты доступа либо при обращении к блоку памяти, выделенному динамически, либо при вызове процедур выдленения памяти. При этом невозможно определить условия возникновения исключений - может спокойно работать три дня, обслуживая сеть из ~100 машин, либо слететь через 5 минут после запуска при одном только клиенте. Ни выбор функций распределения динамической памяти new/delete, malloc/free,
    LocalAlloc/LocalFree, GlobalAlloc/GlobalFree,  HeapAlloc/HeapFree, ни выбор среды программирования проблемы не решают. Может кто-нибудь сталкивался с подобной проблемой и знает пути её решения.
      писал свой прокс .... у меня слетал по началу (код 5) из-за того что несколько потоков пытались править одну и ту-же структуру ..... если функции *Alloc/*Free не возвращают ошибок, то помотри .... может тоже что-то подобное ...
      Сообщение отредактировано: FaileR -
        Доступ ко всем ресурсам, разделяемым между потоками происходит в критических секциях, а ошибка проявляется даже для тех блоков, которые видимы только одному потоку, их выделившему...
          Странно, А функции Alloc/Free ошибок не возвращают?
          переполнений нет?
          это нада посмотреть
            Я бы начал с просмотра вылеза записей за пределы выделенных блоков. ИМХО 90\% ошибок с памятью связана именно с этим.  :)
              Вопрос не в том как бороться с этими ошибками, а в том, почему они могут возникнуть, а могут и не возникнуть при одинаковых видимых условиях. Выход за границы блока не возможен, поскльку память всегда выделяется с большим запасом.
                Может покажется не по теме но скажи на чём у тебя прокся стоит: какой комп и какая ось?

                Просто было у меня дерьмо такое ось NT2000 на старом P200 MX и всё время пятая ошибка вылетала пока BIOS не перепрошил.
                  P-IV 1400 Win2K - слетает
                  P-133 WinNT 4.0 - слетает
                  0 пользователей читают эту тему (0 гостей и 0 скрытых пользователей)
                  0 пользователей:


                  Рейтинг@Mail.ru
                  [ Script execution time: 0,0273 ]   [ 16 queries used ]   [ Generated: 2.05.24, 09:04 GMT ]