Всем привет
собственно можно использовать сипласплас но только без исключений
есть класс его методы активно работают с кучей также есть группа функций
создающая объекты этого класса и вызывающая его методы очень много раз
линейно формируются пакеты особого формата что бы упростить обработку
ошибок вшил в каждый объект jmp_buf
struct ...
{
jmp_buf ...
}
...func...
{
... subj;
if (setjmp(subj.jbuf))
return
subj.method()
subj.method()
subj.method()
subj.method()
subj.method()
subj.method()
subj.method()
subj.method()
subj.method()
return
}
в методе если получили отказ в памяти пишем в лог (надеемся что получится так как память при этом не выделяется просто вызов WriteFile с хендлом Mailslot'а он сам заботится о синхронизации записей и пересылка сообщения об ошибке в другой процесс) и делаем longjmp в итоге вызывающая функция бросает формировать пакет и завершается
вопрос: что думаете обо всем об этом ?
P.S nt 5.1 x86 msvc 2008
18.12.11 14:33: Перенесено из 'C/C++'