Cykliczne odpytywanie urządzenia poprzez udp

Odpowiedz Nowy wątek
2018-03-15 11:09

Rejestracja: 10 lat temu

Ostatnio: 4 dni temu

0

Witam, mam program który jest włączony non stop 24 godziny na dobę będzie chodził na pewno przez wiele miesięcy. Program odpytuje arm i łączy się z nim za pomocą klienta UDP w c#. Za każdym razem gdy odpytuje urządzenie robię metodę connect na wypadek gdyby połączenie zostało zerwane. Czy takie ciągłe łączenie nie zapcha pamięci komputera? Dodam że tak się łączyłem i komputer z programem był włączony przez kilka miesięcy non stop. Z tego co widziałem nic się nie stało. Bedę pisał podobny program więc pytam.

Pozostało 580 znaków

2018-03-15 12:46

Rejestracja: 7 lat temu

Ostatnio: 5 godzin temu

0

znaczy się robisz tak

  1. connect
  2. pobierz dane
  3. disconnect
  4. wait x
  5. goto 1

i nic się nie stanie. Oczywiście trzeba obsłużyć sytuację, gdzie nie uda się połączyć ale to zapewne wiesz


Chcesz pomocy - pokaż kod - abrakadabra źle działa z techniką.
nie lepiej zamiast go to po prostu while :) ? - Akihito 2018-03-15 14:07
boshee ty tak na poważnie? - abrakadaber 2018-03-15 14:08
nie no :D po prostu po oczach bolało, nie traktuj tego poważnie ;) - Akihito 2018-03-15 14:30

Pozostało 580 znaków

2018-03-15 13:56

Rejestracja: 10 lat temu

Ostatnio: 4 dni temu

0

Ok zrobię jak mówisz. Chociaż jak na razie mam podobnie zrobione.

Pozostało 580 znaków

2018-03-15 14:08

Rejestracja: 7 lat temu

Ostatnio: 5 godzin temu

0

chodzi o to, żeby nie Za każdym razem gdy odpytuje urządzenie robię metodę connect na wypadek gdyby połączenie zostało zerwane tylko po odpytaniu samemu kończyć połączenie i zwalniać zasoby.
Powiedz też jak często odpytujesz urządzenie?


Chcesz pomocy - pokaż kod - abrakadabra źle działa z techniką.

Pozostało 580 znaków

2018-03-15 15:08

Rejestracja: 10 lat temu

Ostatnio: 4 dni temu

0

Jest tam metoda close tylko że ona tak zamyka połączenie że nie da się już wykorzystać tego samego obiektu do połączenia (chyba)

Pozostało 580 znaków

2018-03-15 20:53

Rejestracja: 2 lata temu

Ostatnio: 5 godzin temu

0

@abrakadaber: zadał kluczowe pytanie. Jak często odpyrtujesz? Jesli np. co minutę to nie ma sensu trzymac połączenia. Gdybyś trzymał połączenie to i tak trzeba by sprawdzać czy jest aktywne in w razie czego tworzyc nowe.

Pozostało 580 znaków

2018-03-16 08:34

Rejestracja: 10 lat temu

Ostatnio: 4 dni temu

0

Co około sekundę

Pozostało 580 znaków

2018-03-16 09:12

Rejestracja: 2 lata temu

Ostatnio: 5 godzin temu

0

No to nie wiem :) Jeśli odczyt (cała procedura, otwarcie, odczyt, zamkniecie) trwa rząd wielkości mniej to chyba bym otwierał połączenie za każdym razem.

OT - Z ciekawości, możesz napisać co to są za dane, ze wymagają logowania co 1s? To jest ponad 80 000 punktów dziennie. Kto i jak to obsługuje? Jakieś wyliczeniowe agregowane analizy? Wykresy? Niedawno walczyłem z klientem bo tez chciał zapis co 1s tylko tam było 30 punktów pomiarowych więc sporo danych a proces zmieniał się realnie co 30-60 sekund. No i klient chciał potem wykres tygodniowy z tego :) 20 mln punktów na wykresie.

edytowany 1x, ostatnio: jacek.placek, 2018-03-16 09:13

Pozostało 580 znaków

2018-03-16 09:40

Rejestracja: 10 lat temu

Ostatnio: 4 dni temu

0

Witam to będą dane z czujników jakieś wielkości fizyczne, na razie robię tak żeby było, muszę szefa dopytać co to za wielkości. Tutaj te dane będą się zmieniać ciągle, bo to maszyna będzie pracować i podawać swoje parametry. O Obsłudze tych danych to nie wiem nic po prostu trzeba będzie je zapisywać na komputer klienta pewnie do bazy danych co jakiś tam czas lub ciągle. Metoda Close zamyka połączenie ale nie można użyć tego obiektu drugi raz bo został usunięty z pamięci co zrobić w takim wypadku.

edytowany 3x, ostatnio: usm_auriga, 2018-03-16 11:16

Pozostało 580 znaków

2018-03-16 11:19

Rejestracja: 2 lata temu

Ostatnio: 5 godzin temu

0

Utworzyć sobie nowy?

Pozostało 580 znaków

Odpowiedz

1 użytkowników online, w tym zalogowanych: 0, gości: 1, botów: 0