Podstawowe dane i wątki

Pracuję nad aplikacją, która korzysta z podstawowych danych i jestem świadomy, że nie jest to bezpieczny wątek, ale staram się zrozumieć, jak zarządzać tym poprawnie. Pozwól mi wyjaśnić, co mam do tej pory ...

Stworzyłem singleton, który inicjuje obiekt zarządzany, a następnie jest dostępny dla wszystkich innych klas, wydaje się, że działa poprawnie, ponieważ ten sam adres obiektu zarządzanego jest odbierany przez wszystkie klasy.

Następnie mam dwie klauzule, które są wykonywane w tej kolejności ...

Ładowanie danych. W ten sposób uzyskuje się liczbę rekordów i jeśli zero ładuje podstawową bazę danych.Widok tabeli wyświetla następnie dane zapisane w kroku 1.

Moim problemem jest to, że krok 1. zawsze zwraca zero rekordów, a krok 2. działa i zwraca prawidłową liczbę rekordów.

Po przetestowaniu problemu za pomocą 1. Z powodu wątku, w którym działa, jeśli wysłam żądanie w tym samym wątku, na którym został utworzony zarządzany obiekt, działa on idealnie.

Dlaczego więc jest w klasie 1. muszę upewnić się, że żądanie jest na właściwym wątku, ale w klasie 2. Po prostu działa, czy jest to po prostu szczęście. Czy istnieje zalecane i udokumentowane podejście do wątków i podstawowych danych?

Dzięki

questionAnswers(1)

yourAnswerToTheQuestion