The OpenNET Project
 
Поиск (ключи):    ПРОГРАММЫ СТАТЬИ СОВЕТЫ ФОРУМ
  WIKI НОВОСТИ (+) MAN'ы ДОКУМЕНТАЦИЯ

Каталог документации / Раздел "Программирование в Linux" / Оглавление документа
next up previous contents
Next: Запирание мьютекса Up: Синхронизация потоков Previous: Область видимости мьютекса   Contents

Инициализация мьютекса

Функция pthread_mutex_init() предназначена для инициализации мьютекса:

int pthread_mutex_init(pthread_mutex_t *mp,

    const pthread_mutexattr_t *mattr);

Здесь мьютекс, указанный mp, инициализируется значением по умолчанию, если mattr равен NULL, или определенными атрибутами, которые уже установлены с помощью pthread_mutexattr_init().

Блокировка через мьютекс не должна повторно инициализироваться или удаляться, пока другие потоки могут его использовать. Если мьютекс инициализируется повторно или удаляется, приложение должно убедиться, что в настоящее время этот мьютекс не используется; pthread_mutex_init() возвращает 0 - после успешного завершения - или другое значение, если произошла ошибка. Пример вызова:

#include <pthread.h>

pthread_mutex_t mp = PTHREAD_MUTEX_INITIALIZER; 

pthread_mutexattr_t mattr; 

int ret; 

/* инициализация мьютекса значением по умолчанию */ 

ret = pthread_mutex_init(&mp, NULL);

Когда мьютекс инициализируется, он находится в открытом состоянии. Статически определенные мьютексы могут инициализироваться непосредственно значениями по умолчанию с помощью макроса PTHREAD_MUTEX_INITIALIZER. Пример инициализации:

/* инициализация атрибутов мьютекса по умолчанию*/ 

ret = pthread_mutexattr_init(&mattr);

/* смена значений mattr с помощью функций */

ret = pthread_mutexattr_*();

/* инициализация мьютекса произвольными значениями */

ret = pthread_mutex_init(&mp, &mattr);



2004-06-22

АКЦИЯ! ПОДПИШИСЬ на журнал Linux Format до 31 января 2012 года и выиграй СУПЕРПРИЗ!

Журнал "Linux Format" (Линукс Формат)- Единственный в России и странах СНГ журнал на русском языке, посвящённый Linux и свободному ПО. Журнал для IT-директоров, IT-менеджеров, программистов, системных администраторов, учителей школ и преподавателей ВУЗов и всех пользователей ПК. В каждом выпуске: Новости индустрии OpenSource, обзоры новинок свободного ПО, обучающие и методические статьи.

Каждый, кто оформит подписку, получает бонус- объёмные наклейки на системный блок и подарки: с одним из первых выпусков журнала в 2012 году- диск с архивом номеров за 2005-2011 г.г. и ежемесячно электронную версию журнала в pdf-формате.

Подробнее о проведении акции вы можете прочитать на странице сайта.


  Закладки на сайте
  Проследить за страницей
Created 1996-2012 by Maxim Chirkov  
ДобавитьРекламаВебмастеруГИД  
RUNNet TopList