Вопрос

Библиотека потоков Boost имеет Абстракция для резьбы конкретного (локального) хранения. Отказ Я бросил исходный код, и кажется, что функциональность TSS может использоваться в приложении с любым существующим потоком независимо от погоды, которую он был создан из Boost :: Threade, это подразумевает, что определенные обратные вызовы зарегистрированы в ядре Крюк в функции обратного вызова, которая может вызвать разрушитель любых объектов TSS, когда нить или процесс выходят из приспособления. Я нашел эти обратные вызовы.

Мне нужно кэш HMAC_CTX от OpenSSL внутри рабочих потоков различных веб-серверов (см. это, Подробно, вопрос, вопрос для того, что я пытаюсь сделать), и как таковой я не контролирую время жизни потока - веб-сервер делает. Поэтому я буду использовать функциональность TSS на потоках, не созданных Boost :: Thread.

Я просто хотел подтвердить свои предположения, прежде чем я начал реализовать логику кэширования, есть ли недостатки в моей логике?

Это было полезно?

Решение

Ты прав. Вы можете использовать его для потоков, не созданных Boost :: Thread. Если вы посмотрите в Test_tss.cpp, вы можете увидеть, что они точно тестируют, и он должен работать как с потоками POSIX, так и с потоками Windows.

Другие советы

Это частично справа, так как деструктор не вызывается, когда основная отделка потока.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top