Читая о многопоточности POSIX, я наткнулся на пример данных, зависящих от потока. У меня в голове возникла одна путаница ...
Интерфейс данных, зависящих от потока, выглядит немного неуклюжим, особенно если вы смешиваете необходимость использования pthread_once, различных инициализаторов и т.д.
Есть ли причина, по которой я не могу просто использовать статический std :: map, где ключом является идентификатор pthread_self () и значение данных содержится во второй части std :: pair?
Я не могу придумать причину, по которой это не сработает, если оно было заключено в мьютекс, но я не вижу никаких предложений об этом или чего-то подобного что меня смущает, потому что это звучит намного проще, чем предоставленный API. Я знаю, что многопоточность может иметь множество уловок, поэтому я подумал, что спрошу и посмотрю, собираюсь ли я вмешаться ... что-то неприятное? :)