Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Процедура порта завершения жрёт процессорное время!!! [D7, WinXP]


DiVider ©   (2008-08-20 19:46:00) 

Доброе время суток! Сложилась такая ситуация см. сабж. В процедуре бесконечный цикл, как только в неё передаётся управление загруженность проца достигает 99%. Может кто сталкивался?


МистерТ   (2008-08-25 19:59:00) [1]

> Leonid Troyanovsky ©   (24.08.08 20:20) [9]
> 0 + (55 mod 10) * (55 div 10)

Интересно, много думал, спасибо :)


HazardGUS   (2008-08-25 14:45:00) [2]

...аж улыбнуло.. :)


Leonid Troyanovsky   (2008-08-25 06:00:00) [3]


> Германн ©   (25.08.08 00:36) [10]

> Но тогда откуда ты знаешь 0???

Отдать остаток слайса равноприоритетному потоку.
Например, by Jeff Richter.

--
Regards, LVT.


Германн   (2008-08-25 00:36:00) [4]


> МистерТ   (24.08.08 19:26) [8]
>
> 0 - знаю, 10 - знаю, 55 - знаю

Даже догадываюсь откуда ты знаешь 10 и 55 (хотя могу и ошибаться:). Но тогда откуда ты знаешь 0???


Leonid Troyanovsky   (2008-08-24 20:20:00) [5]


> МистерТ   (24.08.08 19:26) [8]

> 0 - знаю, 10 - знаю, 55 - знаю...25 - не знаю

0 + (55 mod 10) * (55 div 10)

--
Regards, LVT.


МистерТ   (2008-08-24 19:26:00) [6]

> sleep(25);
В целях самообразования...откуда такое магическое число ???
0 - знаю, 10 - знаю, 55 - знаю...25 - не знаю


silvestr   (2008-08-24 18:20:00) [7]

в потоке в цикле: sleep(25);


brother   (2008-08-21 05:01:00) [8]

изменил бесконечный цикл на конечный с интервалом проверки? ;)


Германн   (2008-08-21 00:21:00) [9]


> В основном потоке программы создан порт завершения. Для
> порта завершения создан поток обработки событий на порте
> завершения, в нём кроме бесконечного цикла ничего нет.

Даже интересно стало. Что же было создано и для чего? И почему я не знаю этого? Может это незнание и есть причина всех моих бед?
:)


DiVider   (2008-08-20 22:18:00) [10]

Спасибо за ответ, проблема решена :)


DiVider   (2008-08-20 21:31:00) [11]

:))
В основном потоке программы создан порт завершения. Для порта завершения создан поток обработки событий на порте завершения, в нём кроме бесконечного цикла ничего нет. Такая конструкция сжирает процессорное время.


Сергей М.   (2008-08-20 20:47:00) [12]


> Процедура порта


Что еще за зверь ?)


> процедура в отдельном потоке


там же и ошибка.
В 17-й строке.


DiVider   (2008-08-20 19:50:00) [13]

Естественно, процедура в отдельном потоке


Наверх

Титульная страница Поиск, карта сайта Написать письмо