Форум русскоязычного сообщества Ubuntu


Увидели сообщение с непонятной ссылкой, спам, непристойность или оскорбление?
Воспользуйтесь ссылкой «Сообщить модератору» рядом с сообщением!

Автор Тема: Мьютексы  (Прочитано 1569 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн Amokk

  • Автор темы
  • Новичок
  • *
  • Сообщений: 14
    • Просмотр профиля
Мьютексы
« : 22 Ноября 2008, 19:01:46 »
Здравствуйте.

В данный момент переношу одну программу из под Windows на Ubuntu 8.10 . Среда разработки - QDevelop.

В Windows - версии программы я использовал мьютексы:

HANDLE hMutex;

И ряд функций для работы с ними:

WaitForSingleObject( ... );
ReleaseMutex( ... );
CreateMutex( ... );

Требуется реализовать аналогичное под Ubuntu. Как использовать мьютексы в Ubuntu? Какие библиотеки для этого необходимо подключать?
Скажите, пожалуйста, есть ли аналогичный набор функций в ОС Ubuntu и как ими пользоваться...

Оффлайн 12d3

  • Активист
  • *
  • Сообщений: 674
  • Ubuntu 10.04
    • Просмотр профиля
Re: Мьютексы
« Ответ #1 : 22 Ноября 2008, 19:25:23 »
Раз QDevelop, то наверно, используете Qt. Тогда http://doc.trolltech.com/4.4/qmutex.html

Оффлайн Amokk

  • Автор темы
  • Новичок
  • *
  • Сообщений: 14
    • Просмотр профиля
Re: Мьютексы
« Ответ #2 : 22 Ноября 2008, 19:34:02 »
Отличная идея подходит.

Скорее всего mutex.trylock() аналогичен WaitForSingleObject( ... );
а mutex.unlock(); - ReleaseMutex.

Правильно?


Да, кстати. Как в QDevelop'е пользоваться типом  enum? Как обращяться к полям? Через :: не получается...

Оффлайн Yurror

  • Старожил
  • *
  • Сообщений: 1966
    • Просмотр профиля
Re: Мьютексы
« Ответ #3 : 23 Ноября 2008, 12:51:05 »
man pthread*
pthread_mutexattr_destroy
pthread_mutexattr_getprioceiling
pthread_mutexattr_getprotocol
pthread_mutexattr_getpshared
pthread_mutexattr_gettype
pthread_mutexattr_init
pthread_mutexattr_setprioceiling
pthread_mutexattr_setprotocol
pthread_mutexattr_setpshared
pthread_mutexattr_settype
pthread_mutex_destroy
pthread_mutex_getprioceiling
pthread_mutex_init
pthread_mutex_lock
pthread_mutex_setprioceiling
pthread_mutex_timedlock
pthread_mutex_trylock
pthread_mutex_unlock

 

Страница сгенерирована за 0.017 секунд. Запросов: 22.