2014-12-23 2 views
0

Я пишу приложение отладчика для программ на C, которые используют мою библиотеку. отладчик получает имя приложения и запускает его (fork).«Замораживание» всего приложения программно

Отправляю отладочные сообщения из приложения в свой отладчик (каждый раз, когда он вводит некоторые функции в lib). Мне нужна возможность заморозить приложение для определенных событий отладчиком (когда буфер сообщений заполнен или когда пользователь решает).

У меня есть доступ к Lib приложение использует

Как это можно сделать? (даже в многопоточных приложениях)

Я предпочитаю не использовать внешние инструменты, такие как gdb.

+0

Все функциональные возможности, вы можете описать обеспечивается 'gdb'. –

+0

Я знаю, но я не могу полагаться на gdb. плюс gdb использует «хаки», потому что у него нет доступа к приложению. У меня есть доступ к libs. – avilog

+0

Если вы делали это на платформе Windows, например, вам понадобится помощь от API отладки, [см. Здесь начальную точку и связанные с ней статьи] (http: // msdn. microsoft.com/en-us/library/windows/desktop/ms681675%28v=vs.85%29.aspx) –

ответ