Zawieszanie sie duzej aplikacji LV przy jej zakonczeniu
Zawieszanie sie duzej aplikacji LV przy jej zakonczeniu
Witam,
Mam problem z dosc rozbudowana aplikacja LabView, mianowicie w momecie jej zakonczenia (po kliknieciu STOP BUTTON w strukturze event) aplikacja "wiesza sie", uzycie CPU dochodzi do 100%. Stan ten trwac moze dobych pare minut lub w nieskonczonosc. Zachowanie to zaobserwowac mozna glownie po dluzszym uzytkowaniu aplikacji.
Program testowany byl pod LV8.2 i 8.21 jako .exe i .vi- zachowanie to samo.
Prosze o rade w czym moze lezec problem.
Z gory dzieki
wgbiker
Mam problem z dosc rozbudowana aplikacja LabView, mianowicie w momecie jej zakonczenia (po kliknieciu STOP BUTTON w strukturze event) aplikacja "wiesza sie", uzycie CPU dochodzi do 100%. Stan ten trwac moze dobych pare minut lub w nieskonczonosc. Zachowanie to zaobserwowac mozna glownie po dluzszym uzytkowaniu aplikacji.
Program testowany byl pod LV8.2 i 8.21 jako .exe i .vi- zachowanie to samo.
Prosze o rade w czym moze lezec problem.
Z gory dzieki
wgbiker
Re: Zawieszanie sie duzej aplikacji LV przy jej zakonczeniu
Nie wiem czy da radę coś "wywróżyć" bo opis probelmu jaki podajesz jest troszkę... lakoniczny.
Skoro problem jest bardziej obserwowalny przy dłuższym działaniu aplikacji isnieje sugestja ze do pamięci ładowane są nowe obiekty a nie są uwalniane, dlatego LV dławi się. Ale to co powiedzałem jest generyczne i nie wiem czy wogóle pomaga.
Może ktoś inny Ci coś lepiej doradzi ja jednak uważam, że by pomóc dobrze było by móc zobaczyć diagram ( chyba ze w grę wchodzą prawa autorskie , bla bla bla
Pozdr,
Mac_671
Skoro problem jest bardziej obserwowalny przy dłuższym działaniu aplikacji isnieje sugestja ze do pamięci ładowane są nowe obiekty a nie są uwalniane, dlatego LV dławi się. Ale to co powiedzałem jest generyczne i nie wiem czy wogóle pomaga.
Może ktoś inny Ci coś lepiej doradzi ja jednak uważam, że by pomóc dobrze było by móc zobaczyć diagram ( chyba ze w grę wchodzą prawa autorskie , bla bla bla
Pozdr,
Mac_671
Re: Zawieszanie sie duzej aplikacji LV przy jej zakonczeniu
Jesień idzie, pewnie ma depresję...
Krotko: jak dla mnie to Ósemka Drutów, ale pokaż diagram
Krotko: jak dla mnie to Ósemka Drutów, ale pokaż diagram
Re: Zawieszanie sie duzej aplikacji LV przy jej zakonczeniu
Aplikacja sklada sie z ~200 sub VI's wiec prezentacja moglaby byc trudna. Moze wiec pokaze klatke odpowiedzialna za wyjscie z programu.Mikrobi pisze:Jesień idzie, pewnie ma depresję...
Krotko: jak dla mnie to Ósemka Drutów, ale pokaż diagram
[img]http://www.e-lotnisko.nazwa.pl/wg_temp/stop.PNG[/img]
W bloczku Write Data nie dzieje sie nic ciekawego oprocz zapisania danych do pliku.
Zmienna globalna stop zatrzymuje serwer pobierajacy dane z magistrali WorldFIP. Tam tez nie widze problemu.
Coto jest Osemka drutow?Mikrobi pisze:jak dla mnie to Ă“semka Drutów
PS. Chodzi mi tylko o podpowiedz co to moze byc a niekoniecznie o pelne rozwiazanie problemu.
Pewnie ktos juz sie zetknal z tego rodzaju symptomami...
Pozdrawiam
wbiker
Re: Zawieszanie sie duzej aplikacji LV przy jej zakonczeniu
Symptom jest taki, jak gdyby gdzies nadal kręciła się petla w programie, a taki diagram jak ten niewiele nam powie. Tutaj rzeczywiście kłania sie konwencja tworzenia kodu - tak, to to do czego się przyczepiam na forum 8).
Ósemka Drutów? Zaglądnij do Tarota Dla ProGramistów ;)
Ósemka Drutów? Zaglądnij do Tarota Dla ProGramistów ;)
- jogurt_owocowy
- Posty: 1317
- Rejestracja: 30 lis 2004 00:00
- Wersja środowiska: LabVIEW 2015
- Lokalizacja: Kraków
Re: Zawieszanie sie duzej aplikacji LV przy jej zakonczeniu
A co się dzieje dalej w górnej sekwencji? Tak pytam, chociaż też obstawiałbym raczej, że to jakaś pętla "w oddali". Mam parę pomysłów, ale teraz nie mam dostępu do LV. Pogrzebię wieczorem i spróbuję skrobnąć coś bardziej treściwego.
A co do tego tarota, to można by to ładnie wydrukować, wstawić w antyramki czy cuś i rozwiesić na ścianach w labie na uczelni. Na wszystkie to może nie starczyć miejsca (i funduszy), ale niektóre są całkiem ładne. Co myślisz Mikrobi?
A co do tego tarota, to można by to ładnie wydrukować, wstawić w antyramki czy cuś i rozwiesić na ścianach w labie na uczelni. Na wszystkie to może nie starczyć miejsca (i funduszy), ale niektóre są całkiem ładne. Co myślisz Mikrobi?
Re: Zawieszanie sie duzej aplikacji LV przy jej zakonczeniu
...i to mi sie podoba :!:
Re: Zawieszanie sie duzej aplikacji LV przy jej zakonczeniu
[img]http://www.e-lotnisko.nazwa.pl/wg_temp/stop2.PNG[/img]jogurt_owocowy pisze:A co się dzieje dalej w górnej sekwencji? Tak pytam, chociaż też obstawiałbym raczej, że to jakaś pętla "w oddali". Mam parę pomysłów, ale teraz nie mam dostępu do LV. Pogrzebię wieczorem i spróbuję skrobnąć coś bardziej treściwego.
Zachowanie LV jest dosc dziwne w momecie zakonczenia. Wydaje mi sie ze jest to problem Labview jako takiego ale wywolany niepoprawnym stylem programowania (pewnie cos ze zwalnianiem pamieci po uzyciu).
wbiker
- jogurt_owocowy
- Posty: 1317
- Rejestracja: 30 lis 2004 00:00
- Wersja środowiska: LabVIEW 2015
- Lokalizacja: Kraków
Re: Zawieszanie sie duzej aplikacji LV przy jej zakonczeniu
No to trzeba zacząć działać. W ramach pracy społecznej mogę się udzielić Zrób rozpoznanie na ile kart jest miejsce, no i czy znalazłaby się jakaś kasa, żeby to zrobić ładniej. Jak nie to będziemy działać w trybie oszczędnościowo-tekturowym. Potem przedyskutujemy szczegóły: które karty wybrać, czy tłumaczyć opisy itd....i to mi sie podoba
Let's do it
:!:
Re: Zawieszanie sie duzej aplikacji LV przy jej zakonczeniu
wbiker objawy sa nieprawidlowej architektury programu.
Zrób Print, wydrukuj diagram głównego programu (jako dokumentację HTML) i wrzuć w zipie na forum.
Zrób Print, wydrukuj diagram głównego programu (jako dokumentację HTML) i wrzuć w zipie na forum.
Re: Zawieszanie sie duzej aplikacji LV przy jej zakonczeniu
Namierzylem chyba problem. W jednym SubVIu zastosowane sa dynamiczne eventy w celu odswierzania Front Panelu podczas gdy wewnatrz tamtego, SubVI odpowiedzialny za sekwencje pomiarową wykonuje się(wykorzystanie eventow w celu komunikacji z VIem w petli). Problem jest w tym ze po uruchomieniu zaobserwowalem w Menedzeze zadan systematyczny wzrost uzytej przez LabView pamieci tak ze przy tysiecznej iteracji uzyta pamiec siega 150Mb. Taki "wyciek" skutkuje pozniejszym zawieszaniem sie calej aplikacji (tak sądze).
Uproscilem Via tak zeby mozna go bylo uruchomic bez zadnego hardware-u (zalaczony zip).
Bylbym wdzieczny za uwagi codo niego.
Z gory dzieki
wbiker
Uproscilem Via tak zeby mozna go bylo uruchomic bez zadnego hardware-u (zalaczony zip).
Bylbym wdzieczny za uwagi codo niego.
Z gory dzieki
wbiker