Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2011.02.06;
Скачать: CL | DM;

Вниз

Запустить одну процедуру несколькими потоками   Найти похожие ветки 

 
Jee   (2010-09-04 14:24) [0]

Мастера Дельфи (7), помогите - надо одновременно принимать данные с 16 СОМ-портов - как по выбору запускать 16 процедур опроса? для каждого писать свою или можно написать одну и её тиражировать -в нужные моменты стратуя? как?
сейчас один СОМ-порт опрашивается отдельным потоком
type
 TCommThread = class(TThread)
 private
   Procedure QueryPort;
 protected
    Procedure Execute; override;
 end;
надо написать 16 таких потоков? и никак не оптимизировать?


 
Медвежонок Пятачок ©   (2010-09-04 14:44) [1]

ага.
причем понадобится 16 отдельных компьютеров в 16 разных квартирах в 16 разных городах.


 
Jee   (2010-09-04 15:09) [2]

не смейтесь ( я понимаю, что ламер и юзер, но я хочу присоедениться к рядам профессионалов, плюс проект горит с 16 модемами, начальство шкуру дерет - а с программированием только началось знакомство - многое без проблем - а с потоками - созданием новых из цикла - пока не получается, погуглил в яндексе - здесь самая адекватная инфа! Прошу, поможите чем можите - с мира по нитке - голому гора ниток!


 
Медвежонок Пятачок ©   (2010-09-04 16:05) [3]

TCommThread = class(TThread)
private
  Procedure QueryPort;
protected
   Procedure Execute; override;
public
 constructor CreateIt(const AComName : string) ;
end;


 
Jee   (2010-09-04 17:11) [4]

Похоже, что и destructor нужен, огромное Человеческое Спасибо за наВодку!!! буду гуглить в этом направлении!!!


 
Плохиш ©   (2010-09-04 17:12) [5]


> Jee   (04.09.10 17:11) [4]
>
> Похоже, что и destructor нужен

Деструктор там уже есть.


 
Юрий Зотов ©   (2010-09-04 17:21) [6]

> Jee   (04.09.10 14:24)  

Надо написать 1 класс такого потока и создать 16 его экземпляров - каждый на свой порт.


 
Anatoly Podgoretsky ©   (2010-09-04 17:25) [7]

> Jee  (04.09.2010 17:11:04)  [4]

destructor здесь не нужен


 
cwl ©   (2010-09-04 23:15) [8]

токмо про синхронизацию (ежели эти 16 используют общие данные) не забывать. возможно, скармливать данные экземпляру другого класса - щтобы другие потоки не стояли в очереди


 
vpivo ©   (2010-10-23 21:33) [9]

Есть подозрение, что в Вашей TCommThread.Execute ... ну как бы это сказать ... не очень хорошо.


 
Иксик ©   (2010-10-24 02:06) [10]


> Плохиш ©   (04.09.10 17:12) [5]
>
>
> > Jee   (04.09.10 17:11) [4]
> >
> > Похоже, что и destructor нужен
>
> Деструктор там уже есть.


:)))


 
GanibalLector ©   (2010-10-25 11:44) [11]

А где ты нашел 16 портов? Это что ж за ПК такой?
Ну, 4 я еще пойму. Но 16 ??? Это не шутка?


 
RWolf ©   (2010-10-25 11:59) [12]


> GanibalLector ©   (25.10.10 11:44) [11]


> Ну, 4 я еще пойму. Но 16 ??? Это не шутка?

всего-то четыре копеечных платы расширения PCI; в промышленных и побольше бывает.


 
Slym ©   (2010-10-25 12:04) [13]

GanibalLector ©   (25.10.10 11:44) [11]
в обычном кассовом аппарате 8 портов, на всякие ридеры терминалы, фискальники :) еще расширить можно...
в стареньком банкомате сом портов не меньше...


 
GanibalLector ©   (2010-10-25 12:38) [14]

2 RWolf ©   (25.10.10 11:59) [12]

Я видел (и использовал) такие PCI платы, но только там 2 порта. Даже если предположить, что существует с 4 портами, то тогда возникает проблема со слотами на ПК. Где найти 4 свободных PCI  слота? Гемморойно, короче.

Slym ©   (25.10.10 12:04) [13]
>в обычном кассовом аппарате 8 портов
Уверен? Я только ими и занимаюсь. 4 максимум! Откуда 8?
http://talla2k.livejournal.com/tag/разъем


 
RWolf ©   (2010-10-25 12:47) [15]


> GanibalLector ©   (25.10.10 12:38) [14]

просто как пример, платы на 4 и 8 портов: http://www.umx.ru/moxa.html.
а уж переходников USB-COM можно подключить и вовсе немеряно; а это ещё по одному COM-порту каждый.
ну, и PCI-разъёмов на разных машинах по-разному. На десктопах ныне обычно ставят мало, да


 
Anatoly Podgoretsky ©   (2010-10-25 12:49) [16]

> GanibalLector  (25.10.2010 12:38:14)  [14]

16 портовые платы обычное явление, практически на любые типы интерфейсов
есть.
С разъемами проблем нет, они в комплекте


 
miek   (2010-10-25 19:18) [17]

Там имелся в виду кассовый терминал (POS). В обычных кассах я и вправду больше 4 не видел.


 
Slym ©   (2010-10-26 07:07) [18]

Slym ©   (25.10.10 12:04) [13]
занимаюсь

Подключал недавненько POS терминалы мне достался COM8... все остальные были заняты...

Стационарный сканер.
Ручной сканер (как-то на клаву зацеплен чтоли)
Фискальник
Выносное табло
Еще какаято хрень
Терминал сбера
Терминал Золотой короны
Мой терминал :)



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

Текущий архив: 2011.02.06;
Скачать: CL | DM;

Наверх




Память: 0.51 MB
Время: 0.009 c
4-1245062957
василий иванович
2009-06-15 14:49
2011.02.06
самописный CSP


15-1283143365
Anatoly Podgoretsky
2010-08-30 08:42
2011.02.06
Выбор почтового клиента для 7


2-1289799666
antsa
2010-11-15 08:41
2011.02.06
Чтение цвета символа в консоли


15-1287493341
azamatufa
2010-10-19 17:02
2011.02.06
Посоветуйте оптимальную структуру БД...


11-1229774206
mtx
2008-12-20 14:56
2011.02.06
Акселератор меню (без MCK)