2013-07-05 5 views
0

Мы вызываем подпрограмму process_input с call_pv, и это вызывается из кода процесса, который обрабатывает ввод текста размером до 1 МБ. Процесс выполняет следующие функции:Почему приложение вызывается при вызове `call_pv()`?

  • он ест почту от любого клиента maileater
  • создает новый билет в приложении
  • и ответы обратно, если размер почты> 1 MB

Недавно я отправил файл размером около 800 КБ, который вызывает постоянный крах процесса, достигающего 2 ГБ и сбой. Вот так:

Call_pv("process_input",G_EVAL|G_ARRAY); 

Любые идеи были бы полезны. Есть ли альтернатива call_pv?

Дополнительная информация: текст, отправленный в электронном письме, содержит символы с акцентом.

+0

Обеспечьте стек. – daxim

ответ

0

Процессы умирают из-за нехватки памяти. 32-разрядный процесс имеет 4 ГБ адресного пространства, но только 2 ГБ, который можно использовать приложением в Windows (и IIRC, 3 ГБ в Linux).