Czy wolisz polską wersję strony elektroda?
Nie, dziękuję Przekieruj mnie tamArkain napisał:Myślę, że powinno działać bez sekcji krytycznej. Chociaż gwarancji nie ma.Skoro GUI ma być obsługiwane TYLKO w głównym wątku to jeżeli mam kolejkę STL i w wątku dodaję do niej kolejne elementy a w głównym wątku sprawdzam rozmiar by wpisać go do pola edit to muszę w obu wątkach te części kodu objąć sesją krytyczną?
Arkain napisał:Częstotliwość timera najlepiej dobrać empirycznie - kilka razy na sekundę. W załączniku programik - demo. Zmienna (typu short bez znaku) jest zwiększana o 1 co 10ms.i w głównym wątku jak cyklicznie i szybko odczytywać tą wartość? Zrobić timer?
Arkain napisał:Inne miejsce?Czy jest inne miejsce które się stosuje do takich sztuczek? Szukam i szukam i nigdzie nie widzę jak pogodzić GUI i wątki (w języku PL)...
Arkain napisał:To zależy. Timer jest tutaj elementem potrzebnym do odświeżania elementu okna, więc czemu miałby być gdzieś indziej? Natomiast do obsługi transmisji przez port COM lepiej wrzucić do osobnego pliku. Dane możesz przekazać wątkowi przy jego uruchamianiu, co pozwoli uniknąć zmiennych globalnych.Inne miejsce to znaczy w tej chwili wszystkie zmienne i stałe globalne oraz wątki i timery zawarte są w pliku źródłowym głównego okna. To chyba nie jest zbyt dobra praktyka prawda?
Arkain napisał:Program napisałem w C#Dzięki za demo. Czyli co liczba zwiększana jest o 1 w wątku podrzędnym a w wątku głównym wyświetlana poprzez Timer?
Arkain napisał:Uroki środowiska .NET.Czemu Menadżer Zadań w Windows 7 pokazuje że ten program ma 7 wątków?
Arkain napisał:Można oczywiście "bawić się" w pętli komunikatów funkcją PeekMessage by GetMessage nie blokowało wątku głównego.A czy oprócz timera jest jeszcze w głównym wątku miejsce gdzie można coś wykonywać w kółko (pewnie pętla komunikatów)?
Arkain napisał:Jest - main.Chodzi mi o takie miejsce jak funkcja wątku pobocznego czy jest takie miejsce w jak funkcja wątku głównego?