Всем привет. Может кто поможет сделать, чтобы эти два цикла выполнялись одновременно.
Код
Program Anim; Uses Crt,Graph; Var I,J,Gd,Gm:Integer; Begin Clrscr; Gd:=Detect; Gm:=2; InitGraph (Gd,Gm,'C:\BP\BGI'); SetBKColor (7); ClearDevice;
SetColor (6); For I:=200 To 300 Do Begin Line (250,I,290,J); Line (290,J,305,J); Line (305,J,250,I); ClearViewPort; Delay(4000); End;
For J:=110 To 210 Do Begin Line (250,I,290,J); Line (290,J,305,J); Line (305,J,250,I); ClearViewPort; Delay(4000); End;
CloseGraph; End.
volvo
13.12.2005 23:39
Player, смысл программы в чем, скажи... А то не совсем понятно, что это такое мигает ...
Alex7
13.12.2005 23:43
Я уже давно мучаю, в прчмом смысле этот вопрос. Ответ получил только что нужно переходить на 32 битный компилятор, так как в Паскале нету поддержки одновременных процессов, даже емуляцию я и то не понимаю как сделать!
Romtek
14.12.2005 0:37
Player
Код
For I:=200 To 300 Do Begin Line (250,I,290,J); Line (290,J,305,J); Line (305,J,250,I); ClearViewPort; Delay(4000); End;
For J:=110 To 210 Do Begin Line (250,I,290,J); Line (290,J,305,J); Line (305,J,250,I); ClearViewPort; Delay(4000); End;
Тут что-то странное... Переменная J не инициализирована до первого цикла, а переменная I во втором цикле осталась той же, на какой закончился 1-й цикл. Ну и бред...
Для начала надо знать что ты хочешь отрисовать. Делать вывод одновременно можно только объединив отрисовку линий в одном цикле.
Alex7, не неси чушь. Нигде нет параллельного выполнения кода программ и даже 32-битный компилятор этого не делает. То, что для нас считается одновременно - для компьютера оно последовательно, просто быстро выполняется и разницы ен видно.
volvo
14.12.2005 0:46
Alex7, "не путай теплое с мягким..." (С)
Практически одновременная отрисовка фигур еще не значит "многозадачность"... Вот тебе элементарный пример... Распакуй и запусти. Исходники не дам, только TPU файлы... Нажмите для просмотра прикрепленного файла
P.S. Настоящая многозадачность реализуема только на многопроцессорных системах...
Alex7
14.12.2005 8:33
Romtek,volvo Помойму все об это давно знают, поэтому я так и выражаюсь- для простоты. Имею ввиду, что визуально процессы идут паралельно. Но всетаки можно же организовать такую работу? ведь так? Хоть кто то знает как правильно это сделать?
volvo
14.12.2005 9:13
Alex7, ты архив смотрел?
Я тебя иногда не понимаю... Тебе вроде надо, но когда тебе напишешь - ты не обращаешь внимания...
Alex7
15.12.2005 19:26
Эм,...... М-да, я себя втаких случаях тоже иногда не понимаю Я в упор не заметил, что ты это мне прикрепил данные! однака...
Alex7
15.12.2005 20:01
Ну, посмотрел прогу. Круто, красиво, наглядно. НО зачем мне такой сложный пример, если мне нужно всего лишь ответ: КАК сделть процессы одновремеено? Хотел, чтобы мне на примере моей проги показали, как это нужно сделать. Если таки кто-то сможет(90% моего обращения это, конечно к Volvo=) ) То привожу свою прогу, в которой я хотел сделать "одновременное" выполнение подсчета nsk и выполнение процедуры point