Synchronizacja wątków o wspÓlnej zmiennej

Odpowiedz Nowy wątek
2011-10-01 11:03
ProQix Polaczeq
0

Witam.
Mam pytanie czy trzeba używać synchronizacji w wątkach (Threeds) jeżeli korzystaj z wspólnej zmiennej (Integer), gdy wykonują pętle (while) ? I jeżeli trzeba to pytanie czy to wpłynie na szybkość działania aplikacji ?

Pozostało 580 znaków

2011-10-01 11:30
0

InitializeCriticalSection, EnterCriticalSection, LeaveCriticalSection

Pozostało 580 znaków

2011-10-02 20:52
0

Jeśli jest to zmienna lokalna w procedurze wątku używana w pętli to nie trzeba. Jeśli jest to pętla w wątku ale testujesz zmienną globalna, to trzeba, chyba że będzie ona zadeklarowana jako threadvar wtedy każdy wątek ma swoją kopię (threadvar jest ponoć 10 razy wolniejszy od var). Synchronizacja dostępu do danych zazwyczaj wiąże się ze spadkiem wydajności. Oprócz sekcji krytycznych ma jeszcze do dyspozycji taką jedną klasę - o której tylko słyszałem / czytałem - co ma długą nazwę, coś a'la texclusivereaderwriter ... W każdym razie OIDP było coś że jak niewielu pisze w wielu czyta to warto ją stosować.

o: http://eonclash.com/Tutorials[...]eadExclusiveWriteSynchroniser

b

Pozostało 580 znaków

Odpowiedz
Liczba odpowiedzi na stronę

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