Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 01.03.2013, 20:02   #1
kipshop
Новичок
Джуниор
 
Регистрация: 19.11.2012
Сообщений: 2
По умолчанию ActEasyIF. в DELPHI

Ну прям беда с этим ActEasyIF.
Скорость обмена 19200,
при это для считывания 45 данных компу требуется 5 секунд (мне кажется что это очень много,может ошибаюсь).
Программа визуализации зависает на время считывания соответственно на 5 секунд.
Считывание нужно производить каждые 3 секунды (такова производственная необходимость).
Что происходит с визуалкой не трудно представить.
Вот код (delphi).

var
odata:array[0..999] of integer;
procedure TForm1.FormCreate(Sender: TObject);
begin
PLK;

end;


procedure TForm1.PLK;
begin
Form1.ActEasy1.ActLogicalStationNum ber:=255;
RW_plk:=1;
RW_plk:= Form1.ActEasyIF1.Open();
if RW_plk=0 then
Form1.Label11.Visible:=false
else
Form1.Label11.Visible:=true ;
end;

procedure TForm1.Write_PLK(Data:Widestring; idata:integer);
begin
RW_plk:=Form1.ActEasyIF1.WriteDevic eRandom(Data,1,idata);
if RW_plk=0 then Form1.Label11.Visible:= false
else Form1.Label11.Visible:=true;
RW_plk:=0;
end;
procedure TForm1.Timer1Timer(Sender: TObject);
begin

Timer1.Enabled:=false;
RW_plk:=Form1.ActEasyIF1.ReadDevice Block('D901',945,odata[901]);
Timer1.Enabled:=true;
Что не так делаю не пойму.

НУЖЕН ДЕЛЬНЫЙ СОВЕТ!!!
kipshop вне форума Ответить с цитированием
Старый 01.03.2013, 23:25   #2
spamer
Software Developer
Старожил
 
Аватар для spamer
 
Регистрация: 19.12.2008
Сообщений: 2,070
По умолчанию

Первая мысль, что приходит - возможно поможет использование потоков...перейти на асинхронную модель взаимодействия...
Будь проще и люди к тебе потянутся
spamer вне форума Ответить с цитированием
Старый 04.03.2013, 20:46   #3
kipshop
Новичок
Джуниор
 
Регистрация: 19.11.2012
Сообщений: 2
По умолчанию

Да ваша правда.
Запустил считывание через другой поток и всё пошло.
Спасибо!
kipshop вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Не изменяется интерфейс моей программы при переходе с Delphi 7 на Delphi 2010 Elvisnya Общие вопросы Delphi 3 28.04.2011 15:59
На Delphi 7 сделать игру кто хочет стать миллионером в delphi 7 666dart666 Помощь студентам 11 04.11.2010 17:57
Rad Studio 2011 XE: новое в Delphi, C++ Builder, RadPHP и Delphi Prism savva-paladin Софт 18 02.10.2010 20:24
Delphi. Как нарисовать в Delphi два движущиеся шара с определенной скоростью? redred Общие вопросы Delphi 10 11.12.2007 10:43
Как открыть БД, написанную в Delphi если нf другой машине Delphi нет? dagarik БД в Delphi 7 22.10.2007 17:54