Vítej, Host. Prosím přihlaš se nebo se zaregistruj.
28.03.2024, 16:18:26

Domů Nápověda Vyhledávání Přihlásit Registrovat
 
Fórum k produktům firmy ELSACO Kolín  

+  PROMOS fórum
|-+  Další firemní SW
| |-+  CW ovladače
| | |-+  Zamrzání CW aplikace
0 uživatelů a 1 Host prohlíží toto téma. « předchozí další »
Stran: [1] Dolů Tisk
Autor Téma: Zamrzání CW aplikace  (Přečteno 3449 krát)
libor
moderátor+

Příspěvků: 388



« kdy: 04.10.2010, 05:12:12 »

Moje aplikace v CW, která využívá vaše nové ovladače, tak "zamrzává". V případě špatné komunikace (nebo žádné - odpojený kabel) dochází k tomu, že panely se přepínají pomalu a celá aplikace je taková "přibržděná". Vypadá to, že se čeká na vypršení nějakého timeoutu. Pokud místo vašich ovladačů dáte dummy.dll (neprovádí se komunikace) jde to normálně. V čem je problém?
Zaznamenáno

libor
moderátor+

Příspěvků: 388



« Odpověď #1 kdy: 04.10.2010, 05:19:52 »

Vzhledem k tomu, že při volání rozhraní v ovladači z ConrolWebu nedochází k žádné prodlevě, tak jsem se dotázal přímo v Moravských přístrojích. Odpověď byla mimo jiné následující:

Citace
CW je dělaný tak, že po předání požadavku na kanál je jedno, jak dlouho se
komunikuje. Úplně normální stav je, že se zadají požadavky na velké množství
kanálů a ty "dotékají" postupně. Notifikují se callback procedurou ovladače
s hodnotou Finalized. Důležité je, aby interfacové procedury DLL ovladače
nebyly blokující (na nic se v nich nečekalo).

Když pošle ovladač požadavky na kanály tak na odpovědi nečeká a jede dál.
Pozor kanály v CW aplikaci ale nesmí mít nastavený parametr timeout (ten se
zadává buď globálně v sekci settings nebo v sekcích channels nebo přímo u
definice kanálů). Implicitně je tento timeout nastavený na 0, což znamená,
že se nečeká.

Problém vaší aplikace tedy s největší pravděpodobností bude nastavený timeout pro kanály (buď jednotlivě nebo skupinově). Nastavení tohoto timoeutu na 0 dosáhnete plynulý běh.

Druhou možností, kterou můžete v krajním případě využít, je tzv. asynchronní mód, který je popsán v nápovědě CW ovladačů.
Zaznamenáno

Stran: [1] Nahoru Tisk 
« předchozí další »
Skočit na:  


Poháněno MySQL Poháněno PHP Powered by SMF 1.1.21 | SMF © 2011, Simple Machines Validní XHTML 1.0! Validní CSS!