-
Data: 2023-02-16 07:22:59
Temat: Re: C++ ośla łączka
Od: heby <h...@p...onet.pl> szukaj wiadomości tego autora
[ pokaż wszystkie nagłówki ]On 16/02/2023 00:02, Grzegorz Niemirowski wrote:
>> w modelu rejestrów sprzętowych. Dlatego jest słowo volatile. I swoją
>> drogą tylko dlatego ;)
> Nie tylko. Także na wypadek modyfikacji zmiennej przez procedurę obsługi
> przerwania.
Wpadłeś w pułapkę.
Nie.
volatile nie służy do tego.
Do tego, co piszesz, służa bariery/fence.
> W głównym programie w ramach optymalizacji zmienna może
> zostać skopiowana do rejestru aby obliczenia wykonywać na nim a nie na
> pamęci. Gdy w tym momencie pojawi się przerwanie, zmodyfikowana zostanie
> stara kopia zmiennej.
Jeśli potraktujesz przerwania jako wątki preemptive, to tak naprawdę
piszesz o zagadnieniu dostępu do zmiennych przez kilka watków. Tego
zagadnienia *NIE* należy rozwiązywać za pomocą volatile, ono nie
powstało do tego i sie do tego NIE nadaje.
https://stackoverflow.com/questions/4557979/when-to-
use-volatile-with-multi-threading
"Short & quick answer: volatile is (nearly) useless for
platform-agnostic, multithreaded application programming. It does not
provide any synchronization, it does not create memory fences, nor does
it ensure the order of execution of operations. It does not make
operations atomic. It does not make your code magically thread safe.
volatile may be the single-most misunderstood facility in all of C++."
Następne wpisy z tego wątku
- 16.02.23 12:46 Grzegorz Niemirowski
- 16.02.23 13:20 Piotr Gałka
- 16.02.23 13:45 heby
- 16.02.23 13:54 heby
- 16.02.23 14:35 J.F
- 16.02.23 15:23 Grzegorz Niemirowski
- 16.02.23 15:33 Piotr Gałka
- 16.02.23 15:37 J.F
- 16.02.23 16:05 Piotr Gałka
- 16.02.23 17:56 heby
- 16.02.23 18:01 heby
- 16.02.23 19:11 Grzegorz Niemirowski
- 16.02.23 19:22 Marek
- 16.02.23 19:27 Marek
- 16.02.23 19:56 heby
Najnowsze wątki z tej grupy
- Cewka elektrozaworu
- zapytanie o chip r5f21275nfp
- nie naprawiam więcej telewizorów
- Zrobił TV OLED z TV LCD
- Zasilacz USB na ścianę.
- Gniazdo + wtyk
- Aliexpress zaczął oszukiwać na bezczelnego.
- OpenPnP
- taka skrzynka do kablowki
- e-paper
- 60 mA dużo czy spoko?
- Dziwne zachowanie magistrali adresowej w 8085
- Współczesne mierniki zniekształceń nieliniowych THD audio, produkują jakieś?
- Jaki silikon lub może klej?
- Smar do video
Najnowsze wątki
- 2025-03-12 China-Kraków => Key Account Manager IT <=
- 2025-03-12 Warszawa => Java Developer <=
- 2025-03-12 Warszawa => Junior Digital Product Manager <=
- 2025-03-12 Katowice => Key Account Manager (ERP) <=
- 2025-03-12 Warszawa => Analityk Biznesowo-Systemowy <=
- 2025-03-12 Prawo u polaczków
- 2025-03-12 Łódź => Programista NodeJS <=
- 2025-03-12 O co chodzi Aliorowi?
- 2025-03-11 Warszawa => Kierownik ds. kluczowych Klientów <=
- 2025-03-11 Łódź => System Administrator (Linux, Active Directory) <=
- 2025-03-10 roaming
- 2025-03-10 wodor
- 2025-03-10 Ostrów Wielkopolski => NodeJS Developer <=
- 2025-03-10 Białystok => System Architect (background deweloperski w Java) <=
- 2025-03-10 Częstochowa => Backend Developer (Node + Java) <=