Все о моделировании в Компас-3D LT
   Главная Статьи Файлы Форум Ссылки Категории новостей
November 12 2025 10:01:47   
Навигация
Главная
Статьи
Файлы
FAQ
Форум
Ссылки
Категории новостей
Обратная связь
Фото галерея
Поиск
Разное
Карта Сайта
Популярные статьи
Что необходимо ... 65535
4.12.1 Професси... 36001
Учимся удалять!... 32834
Примеры, синони... 24109
Просмотр готовы... 23408
Декартовы коорд... 23390
FAST (методика ... 22155
содержание - се... 21488
Просмотр готовы... 20350
Работа с инстру... 15882
Сейчас на сайте
Гостей: 1
На сайте нет зарегистрированных пользователей

Пользователей: 9,955
новичок: Logyattella
Друзья сайта
Ramblers Top100
Рейтинг@Mail.ru

Реклама
Выполняем курсовые и лабораторные по разным языкам программирования
Подробнее - курсовые и лабораторные на заказ по Delphi
Turbo Pascal, Assembler, C, C++, C#, Visual Basic, Java, GPSS, Prolog
5.12.4 Закрытие каналов
При закрытии канала процесс выполняет ту же самую процедуру, что и при закрытии обычного файла, за исключением того, что ядро, прежде чем освободить индекс канала, выполняет специальную обработку. Оно уменьшает количество процессов чтения из канала или записи в канал в зависимости от типа файлового дескриптора. Если значение счетчика числа записывающих в канал процессов становится равным 0 и имеются процессы, приостановленные в ожидании чтения данных из канала, ядро возобновляет выполнение последних и они завершают свои операции чтения без возврата каких-либо данных. Если становится равным 0 значение счетчика числа считывающих из канала процессов и имеются процессы, приостановленные в ожидании возможности записи данных в канал, ядро возобновляет выполнение последних и посылает им сигнал (глава 7) об ошибке. В обоих случаях не имеет смысла продолжать держать процессы приостановленными, если нет надежды на то, что состояние канала когда-нибудь изменится. Например, если процесс ожидает возможности производить чтение из непоименованного канала и в системе больше нет процессов, записывающих в этот канал, значит, записывающий процесс никогда не появится. Несмотря на то, что если канал поименованный, в принципе возможно появление нового считывающего или записывающего процесса, ядро трактует эту ситуацию точно так же, как и для непоименованных каналов. Если к каналу не обращается ни один записывающий или считывающий процесс, ядро освобождает все информационные блоки канала и переустанавливает индекс таким образом, чтобы он указывал на то, что канал пуст. Когда ядро освобождает индекс обычного канала, оно освобождает для переназначения и дисковую копию этого индекса.
Комментарии
Нет комментариев.
Добавить комментарий
Пожалуйста залогиньтесь для добавления комментария.
Рейтинги
Рейтинг доступен только для пользователей.

Пожалуйста, залогиньтесь или зарегистрируйтесь для голосования.

Нет данных для оценки.
Гость
Имя

Пароль



Вы не зарегистрированны?
Нажмите здесь для регистрации.

Забыли пароль?
Запросите новый здесь.
Случайные статьи
Глава 14. INTERPHA...
6.2.3 Размещение ядра
Общая схема вывода
5.12.4 Закрытие к...
Известные объекты
Пример, связанный ...
5.4 ЗАХВАТ ФАЙЛА ...
11.3 ВЗАИМОДЕЙСТВ...
Степень связи
Представление
Общая информация о...
Определение уникал...
3. Выделение в орг...
Приложения
7.3.7. Документац...
Идея третья: Обесп...
Чтение названий ат...
Графический язык
ГЛАВА 3. РАБОЧЕЕ О...
Что для нас будет ...
2.6.2. Способы кон...
Принцип 1. Как мож...
Встроенная база да...
Глава 10. Особенно...
Внешний источник
2.4. Продуктивност...
7.1 СОЗДАНИЕ ПРОЦЕССА
Одноранговые сети
Глава 23. ER-102
Аннотация
9.1.2 Выгрузка пр...
История развития т...
7.2.2 Группы проце...
Управление с помощ...
ГЛАВА 4. ИСПОЛЬЗО...
10.1.2.1 Open
Движение по маршруту
4.2 СТРУКТУРА ФАЙ...
1.2 Логическая т...
Структура книги
Мини-чат
Вам необходимо залогиниться.

Нет присланных сообщений.
Copyright © 2009