Инфоурок Другое ПрезентацииАтрибуты мутекса

Атрибуты мутекса

Скачать материал
Скачать материал "Атрибуты мутекса"

Получите профессию

Экскурсовод (гид)

за 6 месяцев

Пройти курс

Рабочие листы
к вашим урокам

Скачать

Методические разработки к Вашему уроку:

Получите новую специальность за 3 месяца

Флорист

Описание презентации по отдельным слайдам:

  • Атрибуты мутекса

    1 слайд

    Атрибуты мутекса

  • pthread_mutexattr_t#include 

int pthread_mutexattr_init(
	pthread_mutexattr_...

    2 слайд

    pthread_mutexattr_t
    #include <pthread.h>

    int pthread_mutexattr_init(
    pthread_mutexattr_t * attr);

    int pthread_mutexattr_destroy(
    pthread_mutexattr_t *attr);

  • Использование#include 

int  pthread_mutex_init(
	pthread_mutex_t   *restrict...

    3 слайд

    Использование
    #include <pthread.h>

    int pthread_mutex_init(
    pthread_mutex_t *restrict mutex,
    const pthread_mutexattr_t *restrict attr);
    Или
    pthread_mutex_t mutex= PTHREAD_MUTEX_INITIALIZER;

    int pthread_mutex_destroy(pthread_mutex_t *mutex);


  • Операции над pthread_mutexattr_tpthread_mutexattr_get/settype
pthread_mutexat...

    4 слайд

    Операции над pthread_mutexattr_t
    pthread_mutexattr_get/settype
    pthread_mutexattr_get/setpshared
    pthread_mutexattr_get/setprotocol
    pthread_mutexattr_get/setprioceiling
    pthread_mutexattr_get/setrobust_np

  • pthread_mutexattr_get/settype#include 

int pthread_mutexattr_gettype(
	pthre...

    5 слайд

    pthread_mutexattr_get/settype
    #include <pthread.h>

    int pthread_mutexattr_gettype(
    pthread_mutexattr_t *restrict attr,
    int *restrict type);

    int pthread_mutexattr_settype(
    pthread_mutexattr_t *_attr,
    int type);

  • ТипыPTHREAD_MUTEX_NORMAL
PTHREAD_MUTEX_ERRORCHECK
PTHREAD_MUTEX_RECURSIVE
PTH...

    6 слайд

    Типы
    PTHREAD_MUTEX_NORMAL
    PTHREAD_MUTEX_ERRORCHECK
    PTHREAD_MUTEX_RECURSIVE
    PTHREAD_MUTEX_DEFAULT

  • pthread_mutexattr_get/setpshared#include 

int  pthread_mutexattr_getpshared(...

    7 слайд

    pthread_mutexattr_get/setpshared
    #include <pthread.h>

    int pthread_mutexattr_getpshared(
    const pthread_mutexattr_t *restrict attr,
    int *restrict pshared);

    int pthread_mutexattr_setpshared(
    pthread_mutexattr_t * attr,
    int pshared);

    PTHREAD_PROCESS_SHARED
    PTHREAD_PROCESS_PRIVATE

  • pthread_mutexattr_get/setrobust_np#include 

int pthread_mutexattr_getrobust_...

    8 слайд

    pthread_mutexattr_get/setrobust_np
    #include <pthread.h>

    int pthread_mutexattr_getrobust_np(
    const pthread_mutexattr_t *attr,
    int *robustness);

    int pthread_mutexattr_setrobust_np(
    pthread_mutexattr_t *attr,
    int robustness);

  • RobustnessPTHREAD_MUTEX_ROBUST_NP 
PTHREAD_MUTEX_STALLED_NP

    9 слайд

    Robustness
    PTHREAD_MUTEX_ROBUST_NP
    PTHREAD_MUTEX_STALLED_NP

  • Что означает ROBUSTЕсли процесс, удерживающий мутекс, умер, ресурс, защищенны...

    10 слайд

    Что означает ROBUST
    Если процесс, удерживающий мутекс, умер, ресурс, защищенный этим мутексом, остается в несогласованном состоянии
    Попытки его захватить возвращают EOWNERDEAD
    Если ресурс удалось восстановить, следует вызвать функцию pthread_mutex_consistent_np

  • pthread_mutex_consistent_npint pthread_mutex_consistent_np(
		pthread_mutex_t...

    11 слайд

    pthread_mutex_consistent_np
    int pthread_mutex_consistent_np(
    pthread_mutex_t *mutex);

  • pthread_mutexattr_get/setprotocol#include 

int pthread_mutexattr_getprotocol...

    12 слайд

    pthread_mutexattr_get/setprotocol
    #include <pthread.h>

    int pthread_mutexattr_getprotocol(
    const pthread_mutexattr_t *restrict attr,
    int *restrict protocol);

    int pthread_mutexattr_setprotocol(
    pthread_mutexattr_t *attr,
    int protocol);

  • ПротоколыPTHREAD_PRIO_NONE,
PTHREAD_PRIO_INHERIT,       
PTHREAD_PRIO_PROTECT

    13 слайд

    Протоколы
    PTHREAD_PRIO_NONE,
    PTHREAD_PRIO_INHERIT,
    PTHREAD_PRIO_PROTECT

  • Инверсия приоритетаINHERIT – наследование приоритета
Нить, удерживающая мутек...

    14 слайд

    Инверсия приоритета
    INHERIT – наследование приоритета
    Нить, удерживающая мутекс, исполняется с приоритетом, наивысшим среди всех нитей, ждущих этого мутекса (включая себя)

  • Инверсия приоритетаPROTECT – потолок приоритета (priority ceiling)
Нить, удер...

    15 слайд

    Инверсия приоритета
    PROTECT – потолок приоритета (priority ceiling)
    Нить, удерживающая мутекс, исполняется с наивысшим приоритетом из всех нитей, которые могут удерживать этот мутекс.

  • pthread_mutexattr_get/setprioceiling#include 

int  pthread_mutexattr_getprio...

    16 слайд

    pthread_mutexattr_get/setprioceiling
    #include <pthread.h>

    int pthread_mutexattr_getprioceiling(
    const pthread_mutexattr_t *restrict attr,
    int *restrict prioceiling);

    int pthread_mutexattr_setprioceiling(
    pthread_mutexattr_t *attr,
    int prioceiling, int *oldceiling);

Получите профессию

Интернет-маркетолог

за 6 месяцев

Пройти курс

Рабочие листы
к вашим урокам

Скачать

Скачать материал

Найдите материал к любому уроку, указав свой предмет (категорию), класс, учебник и тему:

6 666 396 материалов в базе

Скачать материал

Другие материалы

Вам будут интересны эти курсы:

Оставьте свой комментарий

Авторизуйтесь, чтобы задавать вопросы.

  • Скачать материал
    • 02.11.2020 249
    • PPTX 35 кбайт
    • Оцените материал:
  • Настоящий материал опубликован пользователем Шестернина Алена Сергеевна. Инфоурок является информационным посредником и предоставляет пользователям возможность размещать на сайте методические материалы. Всю ответственность за опубликованные материалы, содержащиеся в них сведения, а также за соблюдение авторских прав несут пользователи, загрузившие материал на сайт

    Если Вы считаете, что материал нарушает авторские права либо по каким-то другим причинам должен быть удален с сайта, Вы можете оставить жалобу на материал.

    Удалить материал
  • Автор материала

    Шестернина Алена Сергеевна
    Шестернина Алена Сергеевна
    • На сайте: 3 года и 4 месяца
    • Подписчики: 0
    • Всего просмотров: 69547
    • Всего материалов: 220

Ваша скидка на курсы

40%
Скидка для нового слушателя. Войдите на сайт, чтобы применить скидку к любому курсу
Курсы со скидкой

Курс профессиональной переподготовки

Технолог-калькулятор общественного питания

Технолог-калькулятор общественного питания

500/1000 ч.

Подать заявку О курсе

Курс профессиональной переподготовки

Руководство электронной службой архивов, библиотек и информационно-библиотечных центров

Начальник отдела (заведующий отделом) архива

600 ч.

9840 руб. 5600 руб.
Подать заявку О курсе
  • Этот курс уже прошли 25 человек

Курс профессиональной переподготовки

Библиотечно-библиографические и информационные знания в педагогическом процессе

Педагог-библиотекарь

300/600 ч.

от 7900 руб. от 3650 руб.
Подать заявку О курсе
  • Сейчас обучается 493 человека из 71 региона
  • Этот курс уже прошли 2 330 человек

Курс повышения квалификации

Специалист в области охраны труда

72/180 ч.

от 1750 руб. от 1050 руб.
Подать заявку О курсе
  • Сейчас обучается 35 человек из 21 региона
  • Этот курс уже прошли 155 человек

Мини-курс

Медико-педагогические аспекты обучения и тренировки

2 ч.

780 руб. 390 руб.
Подать заявку О курсе

Мини-курс

ИТ-инструменты в управлении документооборотом

6 ч.

780 руб. 390 руб.
Подать заявку О курсе

Мини-курс

Личностный рост и развитие карьеры

5 ч.

780 руб. 390 руб.
Подать заявку О курсе