Poszukuję informacji na temat czyszczenia/zwalniania obiektów dispatch a raczej uruchamianych za ich pomocą obiektów biznesowych.
W raporcie od integracji z FK znalazłem metodę Clear() uruchamianą dla obiektu BDokumentPn.
Jednak w dokumentacji nic nie piszą o takiej metodzie dla tego obiektu biznesowego.
W całej dokumentacji jedynym miejscem w którym jest napisane coś o tej metodzie jest fragment należący do dokumentacji obiektu BKonfiguracjaRaportow o następującej treści: "Czyści dotychczasowe ustawienia dla wykonywania raportów i procedur przy zajściu odpowiedniego zdarzenia. Po wywołaniu metody funkcjonalność jest wyłączona (stan domyślny)."
Interesuje mnie czyszczenie/zwalnianie obiektów biznesowych BKontrahent, BTowar, BDokumentyMg/Sp. Jakie jest zachowanie tej metody, czy tylko zeruje atrybuty tych obiektów czy też pozwala na zwolnienie zajmowanej przez niego pamięci?
Niestety tak, gdyż synchronizuje kartoteki z zewnętrznym systemem. Oznacza to że dość często muszę synchronizować do 1000 rekordów, a zdarza się czasem że ta pula przekracza sto tysięcy. Zaobserwowałem jednak że po zakończeniu operacji pamięć nie jest zwalniana i potrafi zajmować nawet ponad 500 MB przy liczbie danych przekraczających tysiąc, nie wiem jak bardzo są pożerane zasoby przy synchronizacji znacznie przekraczającą pule zbliżoną do tysiąca. Pamięć jest oczywiście zwalniana dopiero, gdy zamkniemy program.
Dlatego też urodził się ten problem ze zwalnianiem pamięci, którego rozwiązania obecnie poszukuję.
Prosił bym jednak jakiś komentarz odnośnie metody Clear(). Czy każdy obiekt biznesowy jest w niego wyposażony?
Użytkownicy przeglądający to forum: Nie ma żadnego zarejestrowanego użytkownika i 24 gości
Nie możesz tworzyć nowych tematów Nie możesz odpowiadać w tematach Nie możesz zmieniać swoich postów Nie możesz usuwać swoich postów Nie możesz dodawać załączników