Зачем нам нужен boost :: thread_specific_ptr, или другими словами, что мы не можем легко сделать без него?
Я могу понять, почему pthread предоставляет pthread_getspecific () и т. Д. Эти функции полезны для очистки после мертвых потоков и удобны для вызова из функций в стиле C (очевидная альтернатива - передавать указатель везде, который указывает нанекоторая память была выделена до создания потока).
Напротив, конструктор boost: thread принимает вызываемый класс по значению, и все нестатичные в этом классе становятся локальными в потоке после его копирования.Я не могу понять, почему я хотел бы использовать boost :: thread_specific_ptr вместо предпочтения члена класса больше, чем я хотел бы использовать глобальную переменную в коде ООП.
Ужасно ли я что-то неправильно понимаю?Очень краткий пример поможет, пожалуйста.Большое спасибо.