Я пишу класс исключений C ++, который должен обеспечивать ограниченную обратную трассировку на сайте броска.Поскольку мое приложение будет многопоточным, исключения могут создаваться одновременно.Я искал в Интернете эту проблему безопасности потоков, но не нашел ни одной.
backtrace()
возвращает массив строк C.Эти строки C не должны быть освобождены приложением.Поскольку он получает свою информацию и объединяет эти строки во время выполнения, я боюсь, что он не является потокобезопасным.
dladdr()
возвращает struct Dl_info
с двумя строками Си.Также не должно быть освобождено приложением.
Ну да ладно, наверное, мне стоит просто прочитать исходный код.