eGospodarka.pl
eGospodarka.pl poleca

eGospodarka.plGrupypl.comp.programmingprocedura tworzenia programów › Re: procedura tworzenia program?w
  • Path: news-archive.icm.edu.pl!news.gazeta.pl!not-for-mail
    From: Wojciech Jaczewski <w...@o...pl>
    Newsgroups: pl.comp.programming
    Subject: Re: procedura tworzenia program?w
    Followup-To: pl.comp.programming
    Date: Mon, 20 Feb 2012 22:51:48 +0100
    Organization: "Portal Gazeta.pl -> http://www.gazeta.pl"
    Lines: 40
    Message-ID: <jhuf9v$eop$1@inews.gazeta.pl>
    References: <jhliut$3he$1@mx1.internetia.pl>
    <pj0lc5k2ww4z$.j8cj3ca4fdmw$.dlg@40tude.net>
    <jhodnv$9en$2@inews.gazeta.pl>
    <1rvfbwvj4h0dr$.5mc1fgvvz1ws.dlg@40tude.net>
    <jhoql7$kq0$1@inews.gazeta.pl> <jhr1lj$ub3$1@node2.news.atman.pl>
    <c...@4...com>
    <4f414c67$0$2374$c3e8da3$47a2c32d@news.astraweb.com>
    <c...@4...com>
    <jht6ai$1ip$1@inews.gazeta.pl> <jhthug$tib$1@mx1.internetia.pl>
    <jhtk1u$f91$1@inews.gazeta.pl> <jhtmj1$fma$1@mx1.internetia.pl>
    NNTP-Posting-Host: ip-78-30-102-241.free.aero2.net.pl
    Mime-Version: 1.0
    Content-Type: text/plain; charset="UTF-8"
    Content-Transfer-Encoding: 8Bit
    X-Trace: inews.gazeta.pl 1329774720 15129 78.30.102.241 (20 Feb 2012 21:52:00 GMT)
    X-Complaints-To: u...@a...pl
    NNTP-Posting-Date: Mon, 20 Feb 2012 21:52:00 +0000 (UTC)
    X-User: wjaczewski1
    User-Agent: KNode/4.4.10
    Xref: news-archive.icm.edu.pl pl.comp.programming:195555
    [ ukryj nagłówki ]

    Michoo wrote:

    > Ja mówię o imo najsensowniejszym układzie w większości przypadków:
    > - producent/ci generujący zdarzenia przetwarzania
    > - konsument/ci generujący wynik i ewentualne zdarzenia odpowiedzi(np
    > większość GUI pozwala na wywołania tylko z wątku głównego)
    > - cały kontekst enkapsulowany w żądaniu/odpowiedzi.

    A czy masz jakieś narzędzie, które automatycznie zweryfikuje, że
    rzeczywiście cały kontekst jest enkapsulowany? W przypadku procesów: jeśli
    nie używają pamięci dzielonej - jest oczywiste, że cały kontekst przechodzi
    przez potoki/gniazda/itp. Jeśli jest pamięć dzielona, jest gwarancja że
    jeden proces może namieszać drugiemu tylko w tej pamiędzi dzielonej, ale nie
    w pozostałych blokach.
    [Podejrzewam że istnieją języki, w których da się taką weryfikację zrobić; w
    tej chwili chodzi mi o C/C++].

    >> Częściowo wynika to z tego, co dotychczas robiłem, a POSIX-owe API ma
    >> bardzo poważne - jak dla mnie - wady:
    >> - pthread_cond_timedwait operuje na czasie systemowym a nie monotonicznym
    >> - nie mam możliwości nastawić czekania (select/poll) na pierwsze ze
    >> zdarzeń: cond (lub semafor), otrzymanie danych na socket-cie.
    >> A skoro zwykle i tak muszę używać komunikacji przez potok lub gniazdo, to
    >> wolę osobny proces zamiast wątku.
    > Ok. Ale to już specyfika problemu.
    >
    > A ja piszę, że ogólnie o ile ktoś wie jak je używać to wątki są dobre.

    Pewnie w niektórych przypadkach mogą być dobre.
    Ja po prostu widziałem (a i sam tak robiłem dopóki się tego nie oduczyłem)
    bardzo wiele programów, które dało się zrobić w jednym wątku na select/poll,
    a były robione na wielu wątkach, co skutkowało wielokrotnie dłuższym czasem
    ich testowania i likwidowania co bardziej uciążliwych błędów.
    Prawie każdy wie co to jest wątek i do czego służy, natomiast znacznie
    mniejszej liczbie ludzi chce się zagłębić w to, jak działa system
    operacyjny, w którym tworzone przez nich programy będą uruchamiane i jakie
    przydatne rzeczy ten system oferuje.
    Jeśli ktoś zna alternatywy i wybierze wątki - OK, ale często wybieranie
    wątków wynika z nieznajomości tych alternatyw.

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: