Невоспроизводимые ошибки времени выполнения - общий подход?

Я столкнулся с проблемой настолько загадочной, что я даже не знаю, как сформулировать этот вопрос ... Я даже не могу опубликовать какой-либо фрагмент кода.

Я разрабатываю большой проект самостоятельно, начал с нуля. Пришло время релиза, но я не могу избавиться от досадной ошибки. Моя программа время от времени записывает выходной файл, и во время этого я получаю либо:

  • std :: string out_of_range error
  • std :: string length_error
  • просто много чепухи на выходе

Стоит отметить, что эти ошибки возникают очень редко и не могут никогда быть воспроизведены, даже с одним и тем же вводом. Memcheck не показывает нарушения памяти даже при запуске, где ошибки были ранее отмечены. Cppcheck тоже не жалуется. Я интенсивно использую STL и pthreads, но без последнего тоже случаются ошибки.

Я пробовал и новейшие g ++, и icpc. Я использую некоторую версию Ubuntu, но не думаю, что причина в этом.

Я был бы признателен вам за любую помощь, ребята, в том, как решать такие проблемы. Заранее спасибо.

7
задан Julian 1 March 2011 в 11:03
поделиться