Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2003.11.17;
Скачать: [xml.tar.bz2];

Вниз

Проблема с процессами   Найти похожие ветки 

 
MMA   (2003-11-06 15:50) [0]

Добрый день.

Ситуация следующая:

Есть главное приложение, которое при запуске должно создавать два
процесса.
Первый процесс проигрывает, в цикле, несколько avi"шек и завершает цикл, только по сигналу от второго процесса.
Второй процесс в цикле опрашивает com-порт и завершает цикл, после принятия определенных данных из com-порта, выдавая при это
сигнал первому процессу.

Проблема в том, что мне не запустить оба процесса одновремено! :-( Один из них блокирует запуск другого. Или может я чего путаю.

Вот кусок кода, где я создаю процессы:

procedure TForm1.FormCreate(Sender: TObject);
begin
...
InitVideo;
TComThread.Create(False);
TAviThread.Create(False);
end;

Буду благодарен за любой дельный совет.

З.Ы. И еще, любой из этих процессов сильно грузят систему. Можно как-нибудь увеличить производительнось?


 
Palladin   (2003-11-06 15:58) [1]

Ну во первых не процесс, а поток, а во вторых, как можно говорить о какой то функциональности потоков если не приведен их код, а приведено то что вообще ни о чем никому не скажет (на кой черт нужны эти три строки, неужели ты жумаешь что ошибка тут?)


 
MMA   (2003-11-06 16:07) [2]

Я так понял, что класс TThread, реализует именно процесс.
Подскажите, как создать именно отдельный процесс.


 
Palladin   (2003-11-06 16:09) [3]

Что ты хочешь? Для твоей задачи хватит и потоков.


 
Кот Бегемот   (2003-11-06 16:55) [4]

>Подскажите, как создать именно отдельный процесс.

Может CreateProcess() ??? - не пробовал, а...


 
MMA   (2003-11-06 16:57) [5]

Мне нужно, чтобы после запуска приложения крутились авишки (в цикле ~5 штук) и в тоже время постоянно опрашивался com порт. После того, как com порт получает определенные данные, проигрывание авишек прекращется и дается возможность пользователю совершить некоторые действия. После совершения пользователем некоторых действий, процесс повторяется.

Как мне это можно реализовать?


 
Кот Бегемот   (2003-11-06 17:04) [6]

Тю... так бы и сказал !

Засунь обработку com-порта в Thread
а в TAnimate выставь property Timers как тебе нужно
и на TAnimate.OnStop меняй авишку.



Страницы: 1 вся ветка

Форум: "Основная";
Текущий архив: 2003.11.17;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.45 MB
Время: 0.011 c
14-56833
Dean
2003-10-28 06:21
2003.11.17
Меня заманали юзеры


1-56737
Aleksandr
2003-11-06 18:12
2003.11.17
Как отскроллировать ListBox в конец его списка


3-56469
valex
2003-10-28 19:22
2003.11.17
ODBC драйвер для interbase


9-56429
Арм
2003-05-09 01:54
2003.11.17
Поиск кратчайшего пути....


1-56558
NeonSunlight
2003-11-05 23:26
2003.11.17
Работа с HTML





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский