eGospodarka.pl
eGospodarka.pl poleca

eGospodarka.plGrupypl.misc.elektronikaPICowanieRe: PICowanie
  • Data: 2013-10-10 22:05:13
    Temat: Re: PICowanie
    Od: JDX <j...@o...pl> szukaj wiadomości tego autora
    [ pokaż wszystkie nagłówki ]

    On 2013-10-10 20:46, Sebastian Biały wrote:
    [...]
    > On 2013-10-10 20:07, JDX wrote:
    >>> Destruktor nie "czeka" tylko wołany jest natychmiast po return.
    >>> Dokładnie tak jak chcę.
    >> Zakładając, że pomiędzy odczytaniem z chronionego zasoby a returnem nie
    >> ma znaczącego (w sensie czasu wykonania) kodu.
    >
    > A skąd on miałby się tam wziąść? Nawej najgorsze kompilatory C++ nie
    > będą robiły zadnego obiektu sc. On nie istnieje w kodzie wynikowym,
    > zostaje po nim tylko sei w miejscach gdzie wychodzisz z funkcji. Puffff
    > i cała sekcja krytyczna, klasa, konstruktor itd zamienia się w dwie
    > instrukcje asm. To jest wlasnie ten moment którego programiści embedded
    > nie czają. Tam *nie* ma obiektu ani narzutu w kodzie. Kod jest taki sam
    > jak z C a bywa że lepszy.
    Nie, nie, zupełnie nie zrozumiałeś o co mi chodzi. A chodzi mi o coś w
    tym stylu:
    struct CriticalSection{ CriticalSection() { cli(); } ~CriticalSection()
    { sei(); } };

    void foo()
    {
    CriticalSection cs;
    char tmp = UART_D;
    do_some_very_time_consuming_stuff();
    }

    Przydałoby się opuścić CS zaraz po odczycie z chronionego zasobu a się
    nie da. No chyba że zastosujemy trick w postaci jawnego zawołania cli(). :-D

Podziel się

Poleć ten post znajomemu poleć

Wydrukuj ten post drukuj


Następne wpisy z tego wątku

Najnowsze wątki z tej grupy


Najnowsze wątki

Szukaj w grupach

Eksperci egospodarka.pl

1 1 1

Wpisz nazwę miasta, dla którego chcesz znaleźć jednostkę ZUS.

Wzory dokumentów

Bezpłatne wzory dokumentów i formularzy.
Wyszukaj i pobierz za darmo: