eGospodarka.pl
eGospodarka.pl poleca

eGospodarka.plGrupypl.comp.programmingWybór języka/technologii pod konkretne wymagania, konkretnego przypadku ludzkiego :)Re: Wybór języka/technologii pod konkretne wymagania, konkretnego przypadku ludzkiego :)
  • Path: news-archive.icm.edu.pl!agh.edu.pl!news.agh.edu.pl!news.cyf-kr.edu.pl!news.nask
    .pl!news.nask.org.pl!news.internetia.pl!not-for-mail
    From: Edek <e...@g...com>
    Newsgroups: pl.comp.programming
    Subject: Re: Wybór języka/technologii pod konkretne wymagania, konkretnego
    przypadku ludzkiego :)
    Date: Sat, 18 May 2013 04:33:49 +0000 (UTC)
    Organization: Netia S.A.
    Lines: 37
    Message-ID: <kn70bd$4k5$5@mx1.internetia.pl>
    References: <7...@g...com>
    <kn1rst$o77$1@somewhere.invalid>
    <u...@4...com>
    <kn4ius$bbu$1@somewhere.invalid> <kn50k0$4k5$2@mx1.internetia.pl>
    <kn680l$ibp$1@news.task.gda.pl>
    NNTP-Posting-Host: 178-36-255-177.adsl.inetia.pl
    Mime-Version: 1.0
    Content-Type: text/plain; charset=UTF-8
    Content-Transfer-Encoding: 8bit
    X-Trace: mx1.internetia.pl 1368851629 4741 178.36.255.177 (18 May 2013 04:33:49 GMT)
    X-Complaints-To: a...@i...pl
    NNTP-Posting-Date: Sat, 18 May 2013 04:33:49 +0000 (UTC)
    X-Tech-Contact: u...@i...pl
    User-Agent: Pan/0.139 (Sexual Chocolate; GIT bf56508 git://git.gnome.org/pan2)
    X-Server-Info: http://www.internetia.pl/
    Xref: news-archive.icm.edu.pl pl.comp.programming:203477
    [ ukryj nagłówki ]

    Dnia Fri, 17 May 2013 23:38:32 +0200 po głębokim namyśle Marek Borowski
    rzekł:

    > On 5/17/2013 12:26 PM, Edek wrote:
    >> Dnia Fri, 17 May 2013 07:33:00 +0100 po głębokim namyśle Andrzej
    >> Jarzabek rzekł:

    >>> Może nie najszczęśliwiej dobrane słowo. Chodzi o to, że to to samo, co
    >>> mutex i condition variable. Główny problem z użyciem tych konstruktów
    >>> jest poprawny projekt, a w tym temacie synchronized/notify nie pomaga.
    >>
    >> Nie, nie "to samo". Przykład pierwszy z brzegu:
    >> mutex1.lock();
    >> mutex2.lock();
    >> mutex1.unlock(); // jak to zrobić blokami "synchronized"?
    >>
    > Idealny przyklad kodu ktory jest kandydatem do deadlocku.

    Tak samo, jak używanie new jest kandydatem do wycieku pamięci.

    Powyższe to zwykły Pattern - używa się go wtedy, kiedy dla przykładu
    pierwszy mutex chroni zmiany strukturalne kolekcji a drugi element
    kolekcji. Często nie można trzymać locka na całej kolekcji podczas
    operacji tylko na jednym elemencie, a jednocześnie mieć możliwość
    usuwania i dodawania elementów co się robi trzymając pierwszy lock
    (i przy każdej operacji pobierającej element).

    Jak unikać tego typu deadlocków wymyślił już Dijsktra (i znam
    parę osób w tym siebie, które same na to wpadły), rozwiązanie
    jest trywialnie proste.

    Tak przy okazji - nie wiem co jest w programie studiów dzisiaj.
    Rozumiem, że są drzewka, sortowania itd., a powyższego nie ma?

    --
    Edek

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: