освобождение памяти внутри обработчика сигналов

Я пишу API, использующий сокеты. В API я выделяю память для различных элементов. Я хочу убедиться, что закрываю сокеты и освобождаю память на случай, если появится сигнал, например Ctrl-C. В ходе исследования выяснилось, что free () не входит в список безопасных функций (сигнал man 7), поэтому я не могу освободить память внутри обработчика сигналов. Но я могу закрыть розетку нормально. Есть какие-нибудь мысли, как освободить память? Заранее благодарю вас за ваше время.

5
задан Mike 26 January 2012 в 17:30
поделиться