Описание тега thread-specific-storage

1 ответ

Как правильно использовать данные, специфичные для потока

Я программирую, используя pthread. Мне нужна глобальная переменная, которая имеет разное значение для разных потоков. И потоки будут использовать одну и ту же функцию для работы с этой переменной, например, для изменения ее значения. Если один поток…
0 ответов

C++ Thread local storage - одно и то же имя, используемое в разных блоках компиляции

Предположим, у нас есть следующий код в некотором модуле компиляции, который в конечном итоге компилируется в общую библиотеку в Linux (g++ 4.9) namespace A { class B { static __thread MyObj *myobj; }; } Так что это скомпилировано в.so и не экспорти…
09 июн '18 в 16:52
1 ответ

Каким образом схема именования переносимого механизма хранения, специфичного для потока, генерирует относительные уникальные идентификаторы потока?

Механизм ссылки / идентификации хранилища, зависящий от переносимого потока, примером которого является boost / thread / tss.hpp, необходим способ генерирования уникальных ключей для себя. Этот ключ является уникальным в области видимости потока и в…
1 ответ

Как выполнить итерацию по указателям, повышающим поток

У меня есть многопоточное приложение. Каждый поток инициализирует тип данных struct в своем собственном локальном хранилище. Некоторые элементы добавляются к векторам внутри переменных типа структуры. В конце программы я хотел бы перебрать локальные…
2 ответа

Данные, специфичные для потока, против локального хранилища потока

Я прочитал Kerrisk " Интерфейс программирования Linux: Руководство по системному программированию в Linux и UNIX", глава 31, "Потоки". В эту главу включены данные, относящиеся к потокам (раздел 31.3.4) и локальное хранилище потоков (раздел 31.4). Те…
1 ответ

Могу ли я сохранить значение из моей текущей темы?

Я встретил некоторые заблуждения при написании программы на Си. Мой сценарий имеет 2 потока, но они запускаются последовательно, поэтому в одно время есть один поток. Я хочу сохранить параметр в моем первом потоке, и я хочу получить его во втором по…
5 ответов

pthread_key_create деструктор не вызывается

Согласно справочной странице pthread_key_create, мы можем связать деструктор, который будет вызываться при закрытии потока. Моя проблема в том, что зарегистрированная функция деструктора не вызывается. Суть моего кода заключается в следующем. static…
02 июл '14 в 02:28
9 ответов

Можно ли * безопасно * вернуть TCHAR* из функции?

Я создал функцию, которая преобразует все коды уведомлений о событиях в строки. Довольно простые вещи на самом деле. У меня есть куча таких как const _bstr_t DIRECTSHOW_MSG_EC_ACTIVATE("A video window is being activated or deactivated."); const _bst…
1 ответ

Разница между "локальным хранилищем потока" и "хранилищем конкретного потока"

В чем разница между объявлением локальной переменной потока с использованием специального ключевого слова: _Thread_local int var; И используя конкретный tss_ набор функций: tss_t key; tss_create(&key, free); tss_set(key, malloc(sizeof(int))); in…
0 ответов

Многопоточность Python - утечка памяти при использовании общего объекта (так)

У меня есть программы на Python, которые получают утечки памяти при использовании стороннего SO. Я упрощаю свой код следующим образом: import time import sys import threading import codecs import ctypes sys.stdout = codecs.getwriter("utf-8")(sys.std…