Кто-нибудь может сказать мне пример использования механизма блокировки на основе futex? (для процессора muticore x86, CentOS)Механизм блокировки на основе Futex
ответ
Мьютексы Pthreads реализованы с использованием futexes в последних версиях Linux. Pthreads является стандартным API-интерфейсом C для потоковой передачи данных в Linux и является частью стандарта Posix, поэтому вы можете легко переносить свою программу на другие Unix-подобные системы. Вы должны избегать использования futexes напрямую, если у вас нет очень необычных потребностей, потому что их очень сложно использовать правильно - используйте pthreads или API-интерфейс более высокого уровня, специфичный для языка (который почти наверняка будет использовать сами pthreads).
Посмотрите на https://github.com/avsm/ipc-bench. Они используют futex в реализации общей памяти.
В частности, вы можете проверить this code.
рабочий пример: mutex pthreads использовать блокировки futex.
Пример кода: они были сделаны в течение нескольких месяцев после этого сообщения в 10-м году, но все еще актуальны.
http://meta-meta.blogspot.com/2010/11/linux-threading-primitives-futex.html https://github.com/lcapaldo/futexexamples
случай использования Пример: МПК и синхронизация между процессами являются единственным примером того, почему следует использовать futex в пользовательском пространстве. Мьютексы pthread будут работать для нескольких потоков, за исключением крайних случаев, но в многопроцессном режиме отсутствуют механизмы блокировки высокой производительности, а также блокировки.
- 1. отлаживать futex блокировки
- 2. Как реализовать механизм «блокировки» БЕЗ использования мьютексов, futex и семафоров?
- 3. Linux 3.0: ошибка блокировки блокировки futex-lock?
- 4. Механизм блокировки на Neo4J
- 5. Распределенный механизм блокировки. NET
- 6. Механизм блокировки файлов SFTP
- 7. Механизм блокировки Odoo (OpenERP)
- 8. Механизм блокировки пароля iPhone
- 9. ASP.NET Механизм блокировки кеширования
- 10. Механизм блокировки при GAE
- 11. Механизм блокировки между процессом на нескольких машинах
- 12. . NET Remoting механизм блокировки резьбы
- 13. механизм блокировки Mifare Classic 1к
- 14. Явный механизм блокировки в SQLite
- 15. Механизм блокировки SQL Server Раздражает
- 16. Python & Couchbase Механизм блокировки/разблокировки
- 17. Механизм блокировки для скриптов оболочки
- 18. Применение против кеша: механизм блокировки
- 19. ищет механизм для блокировки семафора?
- 20. Как изменить механизм блокировки в альтернативном кэше PHP (APC)?
- 21. Почему блокировки на основе каналов?
- 22. Механизм блокировки многопроцессорности Python сбой при обнаружении блокировки
- 23. Идентификатор задания потока данных как механизм блокировки
- 24. C++ Threads и простой механизм блокировки?
- 25. Как работает механизм блокировки базы данных
- 26. механизм вычисления на основе Java на основе Open Office Calc
- 27. Механизм блокировки необходим для статических функций?
- 28. Неопределенный механизм блокировки файлов в C# .NET
- 29. Механизм блокировки или механизма документооборота MS?
- 30. Баша механизм блокировки с помощью сокетов
Что относительно последней версии CentOS 5.5? Мутетексы Pthreads на CentOS 5.5 реализованы с использованием futexes? Спасибо – Dima
Futexes были использованы pthreads во всех дистрибутивах Linux начиная с 2004 года, когда были приняты ядра серии 2.6. Это включает CentOS. Я не понимаю, почему вам нужно беспокоиться о них, хотя ... они в значительной степени являются деталями реализации. – Doug
, потому что мне нужно использовать блокировки в очень критическом для времени пути к серверному приложению (место, где все данные прошли). Я думаю, что лучше использовать какой-то «быстрый» механизм блокировки ... – Dima