Решено: Обраотчк idle для main loop (Что использовать?)

Модератор: Модераторы разделов

Silver
Сообщения: 18
ОС: OpenSUSE 42.1

Решено: Обраотчк idle для main loop

Сообщение Silver »

Здравствуйте,

Задача следующая:

Код: Выделить всё

int main()
{
   // инициализирую тут таймер который будет вызывать указаную функцию

   while(1)
   {
       // тут надо что то написать чтобы проц на 100% не юзался и программа не завершалась
   }
}


т.е. надо чтобы в цикле выполнялась какая то пустая работа :drinks:
Спасибо сказали:
Аватара пользователя
sergeyvp
Сообщения: 807
ОС: ubuntu

Re: Решено: Обраотчк idle для main loop

Сообщение sergeyvp »

Silver писал(а):
04.10.2007 13:21
// инициализирую тут таймер который будет вызывать указаную функцию

Может это подойдёт
http://linfoline.homedns.org/API/glib/glib...out-add-seconds
Спасибо сказали:
Аватара пользователя
serzh-z
Бывший модератор
Сообщения: 8259
Статус: Маньяк
ОС: Arch, Fedora, Ubuntu

Re: Решено: Обраотчк idle для main loop

Сообщение serzh-z »

Создать мьютекс и в конце main вызвать wait для него.
Спасибо сказали:
Silver
Сообщения: 18
ОС: OpenSUSE 42.1

Re: Решено: Обраотчк idle для main loop

Сообщение Silver »

serzh-z писал(а):
04.10.2007 13:43
Создать мьютекс и в конце main вызвать wait для него.



А все, вопрос снимается, разобрался. Оказывается я не тот таймер использовал. Надо было ITIMER_REAL, а я ITIMER_VIRTUAL поставил, тупо выдернув функцию из другого проекта. :crazy: Задействовал семафоры и усё. Всем спасибо :)
Спасибо сказали: