Потокобезопасная функция увеличения без блокировки?

StackOverflow https://stackoverflow.com/questions/1694963

Вопрос

ОБНОВЛЕННЫЙ: Существует ли потокобезопасный, без блокировок и доступный во всех дистрибутивах Linux увеличение функция доступна на C или C ++?

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

Решение

Глиб имеет функции для этого. Вы можете проверить http://library.gnome.org/devel/glib/stable/glib-atomic-operations.html

В частности, похоже, что вы хотите g_atomic_int_inc ()

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

Я думаю, что это расширения GNU и специфичные для процессора, но посмотрите на GNU C Atomic Buildins.

Я думаю, что есть также атомные «библиотеки», которые используют встроенную сборку и т. Д., Для предоставления таких функций.

Текущие стандарты C и C ++ не определяют такую вещь.В вашей реализации вполне может быть таковой.

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