• Zlecenia 4
  • Ocena -
  • Ranking 550

Budżet: 5000 UAH Termin: 14 dni

"Если же увеличить, например, до 5120, то через некоторое время перестает работать (на веб запросы к ней отвечает, но запросы в БД не выполняет). И появляется ошибка о недостатке памяти. Но я никогда не видел, чтобы программа использовала больше 200 мб памяти. После перезапуска опять работает некоторое время, после чего история повторяется."
Видите, у вас ошибка "Thread creation error"? При создании потока выделяется память как в UserMode, так и в ядре системы. И вот эта память в ядре системы с особыми свойствами, в частности, она не может быть вытеснена на диск, в файл подкачки. Она обязательно всегда должна находиться в реальной оперативной памяти. И её не очень много. Грубо говоря, вы создаёте слишком много потоков.
Но думаю, что причина ещё несколько глубже. Из этого множества потоков вы одновременно создаёте слишком много файлов. Насколько я представляю себе работу драйверов файловой системы Винды, они для такого просто не предназначены. Нет, она не падает, но работать начинает очень неэффективно, расходуя тот самый драгоценный пул памяти в ядре, который нельзя свопировать на диск.
Я бы посоветовал перепроектировать программу в этом месте. Есть менее ресурсоёмкие решения.
----------------
Мне тут подсказывают, что я ошибся и, похоже, это так и есть. Я не обратил внимание на то, что процесс у вас 32битный. Обычно по умолчанию размер стека резервируемого для вновь создаваемого потока равен 1Мб. И 5120 новых потоков просто исчерпают всё адресное пространство 32 своими стеками.

  • Zlecenia -
  • Ocena -
  • Ranking 17

Budżet: 1000 UAH Termin: 1 dzień

На посмотреть розобраться цена такая.
Смотрим исходники и какие компоненты используються.
Тогда можно о чемто говорить.
А так с того что есть сразу скажу тупиковый подход. Нужно менять логику, на всех пользователей ядер не хватит некогда.

  • Zlecenia -
  • Ocena -
  • Ranking 84

Budżet: 3000 UAH Termin: 5 dni

Важный вопрос: программа раньше работала стабильно или начала сбоить начиная с какого-то времени?
А то при отсутствии ограничения на максимальное количество соединений и при наличии дудосеров, ваш сервер можно легко положить.

  • Zlecenia 71
  • Ocena -
  • Ranking 540

Budżet: 1500 UAH Termin: 3 dni

Готов заняться Вашей задачей. Проблема с нехваткой памяти и с таймаутом для запросов понятны - но надо понимать, что безграничных ресурсов всё равно не возникнет. Ещё желательно знать версию используемого Вами SQL-сервера. Подробнее могу сказать после того, как посмотрю исходники.

  • Zlecenia 64
  • Ocena -
  • Ranking 1 321

Budżet: 3000 UAH Termin: 5 dni

Здравствуйте,
насколько я понял, какие-то запросы вызывают задержку/нехватку памяти - программа перестаёт работать. Если есть доступ к базе и можно получить текст запроса, смогу переписать.

Oferty ukryte

W liście nie są widoczne oferty ukryte przez zleceniodawcę lub freelancerów z profilem Plus, a także oferty, które naruszają regulamin

Aktualne zlecenia dla freelancerów w kategorii Aplikacje desktopowe

9 lipca