Модераторы: xvr
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Объекты синхронизации и рекурсивный вход 
V
    Опции темы
Mephisto
Дата 11.8.2010, 17:20 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Волкъ
***


Профиль
Группа: Завсегдатай
Сообщений: 1818
Регистрация: 27.8.2003
Где: Питер

Репутация: нет
Всего: 34



Какие объекты синхронизации поддерживают рекурсивный вход одним потоком: семафор, мьютекс, фьютекс, спинлок?
PM   Вверх
MAKCim
Дата 11.8.2010, 21:53 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Воін дZэна
****


Профиль
Группа: Экс. модератор
Сообщений: 5644
Регистрация: 10.12.2005
Где: Менск, РБ

Репутация: 84
Всего: 207



в теории 1 и 2
на практике реализацию чего вы имеете в виду: pthread, ядро, ...?


--------------------
Ах, у елі, ах, у ёлкі, ах, у елі злыя волкі ©

PM MAIL   Вверх
Mephisto
Дата 11.8.2010, 23:30 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Волкъ
***


Профиль
Группа: Завсегдатай
Сообщений: 1818
Регистрация: 27.8.2003
Где: Питер

Репутация: нет
Всего: 34



Цитата(MAKCim @  11.8.2010,  22:53 Найти цитируемый пост)
в теории 1 и 2

Хм, я почему-то думал что только фьютексы как раз обладают подобной возможностью.
Цитата(MAKCim @  11.8.2010,  22:53 Найти цитируемый пост)
на практике реализацию чего вы имеете в виду: pthread, ядро, ...?

Ну, насколько я понимаю варианты 1,2 и 4 pthread должны опираться на реализацию ядра, только фьютексы имеют реализацию повыше и только в крайнем случае к ядру обращаются. Или я не прав?
PM   Вверх
MAKCim
Дата 12.8.2010, 10:30 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Воін дZэна
****


Профиль
Группа: Экс. модератор
Сообщений: 5644
Регистрация: 10.12.2005
Где: Менск, РБ

Репутация: 84
Всего: 207



Цитата(Mephisto @  11.8.2010,  23:30 Найти цитируемый пост)
Ну, насколько я понимаю варианты 1,2 и 4 pthread должны опираться на реализацию ядра

реализация ядра - futex()
man 2 futex

все остальное - user-level атомарные операции, которые в случаях 1, 2 используют futex() для ожидания
спинлоки используют замкнутый _цикл_ для ожидания

непосредственно futex() как отдельная концепция используется для синхронизации разного рода, в частности pthread_join


--------------------
Ах, у елі, ах, у ёлкі, ах, у елі злыя волкі ©

PM MAIL   Вверх
Mephisto
Дата 12.8.2010, 23:11 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Волкъ
***


Профиль
Группа: Завсегдатай
Сообщений: 1818
Регистрация: 27.8.2003
Где: Питер

Репутация: нет
Всего: 34



MAKCim, почитал еще немного, вроде пронял. Спасибо.

А в Windows семафоры так же устроены, или есть существенные различия?
PM   Вверх
MAKCim
Дата 13.8.2010, 08:33 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Воін дZэна
****


Профиль
Группа: Экс. модератор
Сообщений: 5644
Регистрация: 10.12.2005
Где: Менск, РБ

Репутация: 84
Всего: 207



Mephisto
не в курсе


--------------------
Ах, у елі, ах, у ёлкі, ах, у елі злыя волкі ©

PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "С/С++: Программирование под Unix/Linux"
xvr
  • Проставьте несколько ключевых слов темы, чтобы её можно было легче найти.
  • Не забывайте пользоваться кнопкой "Код".
  • Вопросы мобильной разработки тут
  • Телепатов на форуме нет! Задавайте чёткий, конкретный и полный вопрос. Указывайте полностью ошибки компилятора и компоновщика.
  • Новое сообщение должно иметь прямое отношение к разделу форума. Флуд, флейм, оффтопик запрещены.
  • Категорически запрещается обсуждение вареза, "кряков", взлома программ и т.д.

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, xvr.

 
 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C/C++: Программирование под Unix/Linux | Следующая тема »


 




[ Время генерации скрипта: 0.0685 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.