![]() |
|
|
![]()
|
|
| Vikelf |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 14 Регистрация: 16.5.2009 Репутация: нет Всего: нет |
Здравствуйте уважаемые форумчане, у меня вот какой проблемный вопрос: Пишу программу на С++ в среде Borland C++ Builder 6.0, программа содержит циклы, первый общий, бесконечный типа
while(1) {...}, и второй вложенный типа do {..} while(...), все условия выполняются, я проверял пошагово, просто глухо виснет, я думаю что проблема в множественном исполнении цикла, просто программа работает по времени, и условие тоже по времени меняется, и пока условие изменится проходит примерно минута, за это время цикл прогоняется неимоверное количество раз. Мне советовали передать управление обработчику сообщений в конце цикла, код: Application->ProcessMessages(); Но он не совсем помогает, теперь прога не сразу виснет а при первом изменении условия работает с жуткими тормозами, а потом уж виснет. Может кто знает как эту проблему решить |
|||
|
||||
| Fish |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 66 Регистрация: 2.6.2004 Репутация: нет Всего: нет |
А хде код?
|
|||
|
||||
| Vikelf |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 14 Регистрация: 16.5.2009 Репутация: нет Всего: нет |
Код не важен, тут может быть любой пример, тем более если я выложу кусок кода с циклами то он всё равно ничего не скажет, а всю прогу всё равно читать никто не будет, главное что условие выполняется, я пошагово проверял. просто пока прога этого условия дождётся, виснет.
Добавлено через 1 минуту и 35 секунд Ну где вы, опытные программисты, нужна помощь, ну хоть кто нибудь |
|||
|
||||
| Vikelf |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 14 Регистрация: 16.5.2009 Репутация: нет Всего: нет |
Я вот думаю может в цикл событие какое нибудь поставить, долгое, чтобы он скажем только раз в секунду выполнялся, вот только какое, может кто знает
|
|||
|
||||
| mrbrooks |
|
|||
![]() трололомен ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 4259 Регистрация: 4.10.2006 Где: Дол Гулдур Репутация: 167 Всего: 306 |
||||
|
||||
| 3315720 |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 59 Регистрация: 28.2.2008 Репутация: нет Всего: нет |
если у тебя bcb6, как и у меня. То у тебя должна быть папка example, в ней есть games. а там проект EarthPingPong - кажется. суть в том, что там создаётся Loop функция, и никакие внешние циклы не нужны. а виснет - это нормальное явление. ты загрузку проца в этот момент смотрел!?
ps долгое условие ::Sleep(20000); Это сообщение отредактировал(а) 3315720 - 25.5.2009, 08:03 |
|||
|
||||
| Vikelf |
|
||||
![]() Новичок Профиль Группа: Участник Сообщений: 14 Регистрация: 16.5.2009 Репутация: нет Всего: нет |
А что там искать, именно?
А что за долгое условие, что оно делает, и как использовать |
||||
|
|||||
| 3315720 |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 59 Регистрация: 28.2.2008 Репутация: нет Всего: нет |
так и использовать
::Sleep(время в миллисекундах) останавливает поток на указанное время а искать... хм... ну, поковыряй на предмет принципа действия. |
|||
|
||||
| Vikelf |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 14 Регистрация: 16.5.2009 Репутация: нет Всего: нет |
Компилятор в sleep(20000) ошибку видит
Добавлено через 5 минут и 7 секунд Хотя нет, всё в порядке, спасибо, sleep работает |
|||
|
||||
| mrbrooks |
|
|||
![]() трололомен ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 4259 Регистрация: 4.10.2006 Где: Дол Гулдур Репутация: 167 Всего: 306 |
||||
|
||||
![]()
|
| Правила форума "С++ Builder" | |
|
|
Запрещается! 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Rrader. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | C++ Builder | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |