Является ли локальное хранилище потоков используемым где-либо еще, кроме того, что глобальные и статические переменные являются локальными для потока? Полезен ли он в любом новом коде, который мы пишем?Использовать локальное хранилище в других местах?
ответ
TLS может быть полезен в новом коде. Если вам нужна глобальная переменная, которая должна быть специфичной для каждого потока (например, errno
в C/C++), то это может быть поток-локальное хранилище.
В эти дни errno
обычно помещается в локальное хранилище потоков.
Существуют некоторые ситуации (например, общие библиотеки, такие как библиотеки DLL, которые требуют кода запуска), где проблема с локальным хранилищем потоков может быть проблемой.
Тематические конкретные одноэлементные объекты? Многопоточный веб-сервер, в котором каждый поток обрабатывает один запрос, существует довольно много возможностей для некоторых данных TLS (например, URL-адрес запроса или некоторые подключения к базе данных, по существу некоторые ресурсы, предназначенные для использования в любой момент при обработке запроса, если требуется), чтобы их можно было легко получить в любом месте кода, когда это необходимо.
omfg S word ... :( –
Singleton. Global. То же отличие. –
Я только нуждался для нарезания конкретной обработки ошибок и оптимизаций (в C):
__thread int cpfs_errno;
static __thread struct Cpfs *g_cpfs;
В данном примере это экономит мне пропускание контекста указателя struct Cpfs *
через десятки функций, в которых он никогда не меняется.
- 1. Локальное хранилище Firefox недоступно в других вкладках
- 2. maven - как использовать локальное хранилище
- 3. Как правильно использовать локальное хранилище?
- 4. Локальное хранилище в шаблонах.js
- 5. Локальное хранилище в Omnet ++
- 6. Как использовать локальное хранилище в maven?
- 7. как использовать локальное хранилище в wkhtmltopdf
- 8. Как использовать локальное хранилище данных в Parse.com
- 9. Локальное хранилище в мобильном приложении
- 10. Локальное хранилище в javascript
- 11. локальное хранилище и хранилище сеансов
- 12. Весна обеспечивает локальное хранилище?
- 13. Локальное постоянное хранилище
- 14. Как использовать локальное хранилище потоков (TLS)?
- 15. Пытается использовать локальное хранилище для регистрации/регистрации
- 16. Как использовать локальное хранилище на Intel XDK?
- 17. Как использовать локальное хранилище на текстовом поле
- 18. Как использовать локальное хранилище для активного класса?
- 19. UIWebView и локальное хранилище
- 20. локальное хранилище HTML5
- 21. Как использовать локальное хранилище HTML5 с Ember.js?
- 22. Как использовать локальное хранилище для телефонного разговора?
- 23. Локальное хранилище ASP.NET HttpApplication
- 24. Локальное хранилище удалите элемент
- 25. Локальное хранилище Silverlight
- 26. Локальное хранилище данных истекает
- 27. Локальное хранилище Перезапись вопроса
- 28. HTML 5 локальное хранилище
- 29. VSTO Word Локальное хранилище
- 30. Локальное хранилище ртути
java.text.DateFormat - хороший пример. Вы можете повторно использовать его, но он не является потокобезопасным, поэтому один хороший способ работать с DateFormat безопасно, не создавая новый каждый раз, - это хранить его в ThreadLocal. – cjstehno