![]() |
1. Пользуйтесь тегами кода. - [code] ... [/code]
2. Точно указывайте язык, название и версию компилятора (интерпретатора).
3. Название темы должно быть информативным.
В описании темы указываем язык!!!
![]() |
Andrewshkovskii |
![]()
Сообщение
#1
|
Бывалый ![]() ![]() ![]() Группа: Пользователи Сообщений: 222 Пол: Мужской Реальное имя: Andrew Репутация: ![]() ![]() ![]() |
Есть желание написать программу, реализующую действия ракеты и её цели. Задаются координаты цели для ракеты, стрелками на клавиатуре можно менять положение цели в 2-х мерном пространстве, ракета должна отслеживать цель. Все это должно производиться "параллельно"..
Код исходный большой(т.е там файлов листинга просто много). Я знаю, что один вольво отвечает на мои безумные посты, на него и надежда вся. ![]() В общем, в коде я оставил комментарии, где происходит "неконтролируемое", они в 2х файлах main и realiz.cpp. Код в архиве... Сообщение отредактировано: Andrewshkovskii - 18.12.2008 17:58 Прикрепленные файлы ![]() |
![]() ![]() |
volvo |
![]()
Сообщение
#2
|
Гость ![]() |
Цитата просто забыл убрать? Нет-нет... Это как раз для того, чтобы показать тебе, где заканчивается мой фрагмент, и продолжается дальше твой, чтоб ты не подумал, что лишняя закрывающая скобка...Насчет Set/ResetEvent внутри ChangeCoordTarget() - не то, чтобы для теста, оно таки должно там быть. Пока у тебя пауза в одном потоке в 100 раз больше, чем в другом - практически нереально, чтобы в тот самый момент, когда один поток переменную меняет, другой ее считывал. Как только длительности Sleep-ов приблизятся друг к другу, вероятность такого события будет все выше и выше, и тебе с уменьшением паузы при полете ракеты придется раскомментировать Set/ResetEvent, а в начале цикла while(IsAlive) добавить ожидание этого события, по тому же принципу, как это сделано в ChangeCoordTarget()... А теперь у меня вопрос на засыпку тебе, раз ты не спросил сам ![]() WaitForSingleObject(startEvent, INFINITE);и в начале потока ChangeCoordTarget, и в начале потока MoveToTarget(). Почему? Зачем? Что будет, если не делать SetEvent? |
![]() ![]() |
![]() |
Текстовая версия | 22.06.2025 16:23 |