tak, ta petla to oddzielny watek a wyglada on mniej wiecej tak:
while (isRunning)
{
try
{
lock (serialPort)
{
if (serialPort.IsOpen)
{
str = serialPort.ReadLine();
}
}
IReceiver rec = recObj as IReceiver;
if (rec != null)
{
rec.Receive(str);
}
}
catch (TimeoutException)
{
}
}
Na poczÄ
tku jeszcze woĹam (nie wiem czy potrzebnie):
Thread.CurrentThread.Priority = ThreadPriority.BelowNormal;
bo szeĹÄ tych wÄ
tkĂłw (karta ma 6 portĂłw) znaczÄ
co zabiera czas procka. Jest
na to jakaĹ rada?
IReceiver odbiera rezultat i maluje go na wykresie. Byc moze to wĹasnie jest
przyczynÄ
bo to malowanie to zrobienie punktu i odmalowanie kawalka ekreanu.
"Maciek" <maciek@nospam.pl> wrote in message
news:gcvdbb$a8b$1@nemesis.news.neostrada.pl...
> lux pisze:
>> Z grubsza algorytm jest nastepujacy:
>> 1. Wyslanie znaku rozpoczecia odczytywania
>> 2. Odebranie znaku potwierdzenia rozpoczecia wysylania danych
>> 3. W petli czytanie danych z portu
>> 4. Wyslanie znaku zakonczenia.
> Czy ta pÄtla dziaĹa w jakimĹ oddzielnym wÄ
tku, dajesz jakieĹ przerwy
> miedzy kolejnymi wywoĹaniami pÄtli? Jaki czas procesora zabiera TwĂłj
> program?
>
> --
> Pozdrawiam
> Maciek
Received on Tue Oct 14 08:35:04 2008
To archiwum zostało wygenerowane przez hypermail 2.1.8 : Tue 14 Oct 2008 - 08:51:01 MET DST