URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID9
Нить номер: 9349
[ Назад ]

Исходное сообщение
"Мониторы в C через семафоры"

Отправлено ii343hbka , 08-Янв-12 08:16 
Помогите реализовать.
В интернетах куча инфы, как оно работает и зачем надо.
Но как реализовать я не понимаю.
Усугубляет дело то, что на C писал только 4 лабы и те наполовину копипаст.

Может кто-то уже делал?
В общем помогите, пожалуйста.


Содержание

Сообщения в этом обсуждении
"Мониторы в C через семафоры"
Отправлено Аноним , 09-Янв-12 16:03 
> Помогите реализовать.
> В интернетах куча инфы, как оно работает и зачем надо.
> Но как реализовать я не понимаю.
> Усугубляет дело то, что на C писал только 4 лабы и те
> наполовину копипаст.
> Может кто-то уже делал?
> В общем помогите, пожалуйста.

Зачем вы беретесь за задачи, к-е заведомо не можете решить? Написали 4 лабы и те наполовину копипаст? Дак у вас банально ни опыта, ни знаний не хватит решить описанную выше задачу! Возьмите что-нить попроще


"Мониторы в C через семафоры"
Отправлено pavlinux , 11-Янв-12 16:48 
> Может кто-то уже делал?

1. процесс

ПОДНЯТЬ_СЕМАФОР()

ПОКА(НЕНАСТУПИТ == КОНЕЦ_СВЕТА) {

  ЕСЛИ( СЕМАФОР == ПОДНЯТ ) {
       РАБОТАТЬ()  
       ЕСЛИ( СОБЫТИЕ == НАДО )
            ОПУСТИТЬ_СЕМАФОР()
   }
}

2. процесс

ПОКА(НЕНАСТУПИТ == КОНЕЦ_СВЕТА) {

   МОНИТОРИТ_СЕМАФОН(ПОКА_НЕ_ЗАШЕВЕЛИТСЯ);

   ЕСЛИ( СЕМАФОР == ОПУЩЕН ) {
      ДЕЛАТЬ(ДЕЛО)
      ПОДНЯТЬ_СЕМАФОР()  
  }
}

:)
---
Список используемой литературы:

Керниган, Ричи. Язык C -http://lib.ru/CTOTOR/kernigan.txt
Линейное программирование http://www.7ya.ru/article/Igraem-i-uchimsya-so-schetnymi-pal.../

man sem_close
man sem_destroy
man sem_getvalue
man sem_init
sem_open
man sem_post
man sem_timedwait
man sem_trywait
man sem_unlink
man sem_wait