Форум программистов, компьютерный форум CyberForum.ru

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
nexen
187 / 180 / 3
Регистрация: 27.01.2012
Сообщений: 1,335
#1

Реализация семафоров - C++

07.05.2013, 11:25. Просмотров 770. Ответов 3
Метки нет (Все метки)

Возможно ли реализовать семафоры вручную или же для этого нужна обязательная поддержка процессора?
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
07.05.2013, 11:25     Реализация семафоров
Посмотрите здесь:

Реализация 2х потоков, работа с буфером, механизм семафоров - C++
Год не было С++, а теперь по смежному предмету задали вот такое : Написать программу, содержащую два потока. Первый поток генерирует...

Взаимная блокировка приложений с использованием семафоров - C++
Доброго времени суток всем! Имеется такое задание: Искусственно создать взаимную блокировку потоков с использованием 2 объектов типа...

Реализация - C++
Кто может помочь с одним моментом в курсовике , курсовик сделан почти весь, но там буквально 5-7 строчек кода нужно чтобы всё заработало. ...

Реализация вектора - C++
Здравствуйте друзья! Зашел в тупик после того как попытался реализовать структуру данных типа вектор своими силами. Допустим у нас есть...

Реализация функции c++ - C++
Программа: #include <iostream> using namespace std; struct Node { int data; Node* next; };

Реализация идеи - C++
Доброго времени суток. Вопрос может быть будет странным.По сути у меня вот появилась идейка как жизнь улучшить немножко себе(ведь программы...

Реализация shared_ptr - C++
Добрый день. Реализовал shared_ptr(), но если больше 2 перемен он не правильно работает. Что я не правильно делаю и как правильно ...

Реализация стека - C++
Здравствуйте, помогите пожалуйста с реализацией стека без использования STL. Стек отображен в памяти Вектором, память статическая(1...

Реализация класса - C++
Так как только начал изучать с++, возникает вопрос: есть задание : Реализовать класс IntArray. Разработать тестовую программу для...

Реализация архитектуры - C++
Задача такая. Есть класс строк ( десятичная , символьная и т.п.) и операции к ним. Я собрал архитектуру, и с помощью класса SWITCH я...

Реализация класса - C++
Помогите понять пожалуйста. Пример из Дейтела: #include "stdafx.h" #include <iostream> #include "GradeBook.h" using namespace...

реализация cat в с++ - C++
Добрый день. Нужно переписать упрощенный cat (без опций и поддержки stdin) код : #include <cstdlib> #include <iostream> ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Убежденный
Системный программист
Эксперт С++
15247 / 6879 / 1092
Регистрация: 02.05.2013
Сообщений: 11,255
Завершенные тесты: 1
07.05.2013, 14:07     Реализация семафоров #2
Скорее, поддержка со стороны операционной системы.
Например, должна быть функция пассивного ожидания (типа WaitForSingleObject).
Без нее написание семафора представляется затруднительным.
nexen
187 / 180 / 3
Регистрация: 27.01.2012
Сообщений: 1,335
07.05.2013, 14:37  [ТС]     Реализация семафоров #3
Убежденный, затруднительным или невозможным?
Убежденный
Системный программист
Эксперт С++
15247 / 6879 / 1092
Регистрация: 02.05.2013
Сообщений: 11,255
Завершенные тесты: 1
07.05.2013, 15:07     Реализация семафоров #4
Давайте определим, что такое семафор.
Пускай это будет объект синхронизации, который ограничивает количество потоков,
которые одновременно могут находиться в охраняемой секции. Такой объект, вероятно,
можно реализовать только на interlocked-функциях и активных циклах (spinlock), без
использования wait-функций, вот только его эффективность лично у меня вызывает
большие сомнения, так как ожидающие своей очереди потоки будут с сумасшедшей
скоростью крутиться в пустых циклах, отнимая ресурсы процессора. На одноядерных
системах это вообще будет жуть.

Хотя такой подход тоже имеет свое право на жизнь, при условии, что среднее время
захвата охраняемой секции очень невелико. В общем, реализовать-то можно, весь
вопрос в практической целесообразности.
Yandex
Объявления
07.05.2013, 15:07     Реализация семафоров
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru