Skocz do zawartości
  • 👋 Witaj na MPCForum!

    Przeglądasz forum jako gość, co oznacza, że wiele świetnych funkcji jest jeszcze przed Tobą! 😎

    • Pełny dostęp do działów i ukrytych treści
    • Możliwość pisania i odpowiadania w tematach
    • System prywatnych wiadomości
    • Zbieranie reputacji i rozwijanie swojego profilu
    • Członkostwo w jednej z największych społeczności graczy

    👉 Dołączenie zajmie Ci mniej niż minutę – a zyskasz znacznie więcej!

    Zarejestruj się teraz

Odczytywanie zmiennej przez 2 wątki w tym samym czasie


Rekomendowane odpowiedzi

Opublikowano

Witam,

 

Mam 2 wątki, jeden wykonuje pętlę while(zmienna_typu_bool), a drugi w pewnym momencie zmienia wartość tej zmiennej na false. Czy jeżeli w tym samym momencie jeden będzie zmieniać wartość, a drugi ją odczytywać to program może się scrashować? Czy są jakieś automatyczne mechanizmy, które temu zapobiegają?

giphy.gif

Opublikowano

Możesz użyć std::mutex. W sensie w tej pętli blokujesz mutex i dopóki pętla się nie wykona nie odblokowujesz mutexu . A w tym drugim wątku możesz dorzucić jakaś pętelkę która czeka właśnie na odblokowanie tego mutexu.I wtedy go znowu blokujesz i ten drugi wątek może używać tej zmiennej.

nostaleh.png

Zarchiwizowany

Ten temat przebywa obecnie w archiwum. Dodawanie nowych odpowiedzi zostało zablokowane.

×
×
  • Dodaj nową pozycję...