LINUX.ORG.RU

Послать сигнал для вкл/откл отладки на C++

 ,


0

1

есть ли какой-нибудь механизм, чтобы сделать следующее:
Есть библиотека, которая собирается с общим проектом.
Сейчас, чтобы вкл/выкл, то надо пересобирать каждый раз заново.
(#if 1 to #if 0)
Включить разбор опций в главный модуль возможности нет, да это и не надо (отладка нужна только для меня).
Есть ли приблуда, с помощью которой можно посылать сигнал типа

echo 1 > /proc/$PID/debug - on
echo 2 > /proc/$PID/debug - off
on - у меня начинает отладка работать, а off - перестает.

★★

Если не надо менять поведение во время работы, то можно переменной окружения это делать.

xaizek ★★★★★
()
Последнее исправление: xaizek (всего исправлений: 2)

обработчик signal-а можно соорудить и через kill -USR1 итд ловить

anonymous
()

Смотря что подразумевается под отладкой. Если тупо лог - то можно. Если дебаг-символы - то, скорее всего, нет. Разве что есть возможность подключать отдельно собранный debug info файл.

RazrFalcon ★★★★★
()

сигналы: USR1,USR2,HUP

i82 ★★
()

Можно открыть сокет и принимать на нем команды.

anonymous
()

Включить разбор опций в главный модуль возможности нет, да это и не надо (отладка нужна только для меня).

Это противоречие наводит на очень нехорошие мысли. Уж не чёрный ли ход вы пытаетесь вкорячить?

vodz ★★★★★
()
Ответ на: комментарий от vodz

Нет. Не черный вход.
Основная прога есть «Чу́дище о́бло, озо́рно, огро́мно, стозе́вно и ла́яй»
А есть маленький модуль, который работает во всей этой кутерьме.
Джентельмены поменяли правила, и теперь, чтобы провести адаптацию, и убедиться, что модуль посылает именно те даные, которые нужно посылать, нужно иметь такую фишку, чтобы каждый раз не пересобирать этого монстра и не гадать, что там, в очередной раз, сломалось.

TomBOY ★★
() автор топика
Ответ на: комментарий от TomBOY

Так вы и родили свой модуль как чудовище. Эти #ifdef 0 и придуманы для того, чтобы было два варианта: чудовище в клетке отладочный и чудовище вымыто и выдрессировано продакшен без отладки. :)

vodz ★★★★★
()
Последнее исправление: vodz (всего исправлений: 1)
Ответ на: комментарий от vodz

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

TomBOY ★★
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.