eGospodarka.pl
eGospodarka.pl poleca

eGospodarka.plGrupypl.comp.programmingIntegracja bibliotek event-based › Re: Integracja bibliotek event-based
  • X-Received: by 2002:a37:4d0f:: with SMTP id a15mr29690120qkb.313.1591736339133; Tue,
    09 Jun 2020 13:58:59 -0700 (PDT)
    X-Received: by 2002:a37:4d0f:: with SMTP id a15mr29690120qkb.313.1591736339133; Tue,
    09 Jun 2020 13:58:59 -0700 (PDT)
    Path: news-archive.icm.edu.pl!news.icm.edu.pl!wsisiz.edu.pl!goblin2!goblin.stu.neva.r
    u!aioe.org!feeder5.feed.usenet.farm!feed.usenet.farm!tr3.eu1.usenetexpress.com!
    feeder.usenetexpress.com!tr2.iad1.usenetexpress.com!border1.nntp.dca1.giganews.
    com!nntp.giganews.com!news-out.google.com!nntp.google.com!postnews.google.com!g
    oogle-groups.googlegroups.com!not-for-mail
    Newsgroups: pl.comp.programming
    Date: Tue, 9 Jun 2020 13:58:58 -0700 (PDT)
    In-Reply-To: <20200609094640.04ee0ae2@mateusz>
    Complaints-To: g...@g...com
    Injection-Info: google-groups.googlegroups.com; posting-host=213.108.152.51;
    posting-account=bMuEOQoAAACUUr_ghL3RBIi5neBZ5w_S
    NNTP-Posting-Host: 213.108.152.51
    References: <5...@g...com>
    <20200609094640.04ee0ae2@mateusz>
    User-Agent: G2/1.0
    MIME-Version: 1.0
    Message-ID: <a...@g...com>
    Subject: Re: Integracja bibliotek event-based
    From: Maciej Sobczak <s...@g...com>
    Injection-Date: Tue, 09 Jun 2020 20:58:59 +0000
    Content-Type: text/plain; charset="UTF-8"
    Content-Transfer-Encoding: quoted-printable
    Lines: 39
    Xref: news-archive.icm.edu.pl pl.comp.programming:214976
    [ ukryj nagłówki ]

    W dniu wtorek, 9 czerwca 2020 09:46:44 UTC+2 użytkownik Mateusz Viste napisał:
    > > Jakie jest poprawne rozwiązanie dla integracji tych 3 bibliotek?
    >
    > To zależy co one mają robić.

    Każda robi coś innego.

    > Skoro mowa o serwerze, to domniemywam że
    > punktem wejścia jest pojawienie się jakiegoś nowego stanu na
    > sockecie.

    Ale my nie widzimy tych socketów, bo one są ukryte w tych bibliotekach. Jedna
    obsługuje HTTP, druga asynchroniczną bazę danych a trzecia odbiera tweety z Twittera.
    Każda z nich ma zapewne jakieś sockety, ale nie wiemy o tym.

    > Jeśli tak, to sprawa prosta:
    >
    > for (;;) {
    > select(sockfd+1, &socksetr, &socksetw, &socksete, &timeout);

    No więc wcale nie jest prosta, bo nie możemy zrobić tego selecta.

    Możemy próbować to, co pokazał heby z onIdle i podobnymi, ale co jak mamy nie jedną,
    ale właśnie 3 biblioteki? Żadna z nich nie może zablokować żadnej z wywołanych
    funkcji (to jest błąd u heby[*]), bo to zatrzyma pętlę, a być może pozostałe
    biblioteki mają wtedy coś do zrobienia.

    Więc gramy dalej. :-)

    [*] Kurdę, łatwiej się odmienia "u Sebastiana", niż "u heby".

    --
    Maciej Sobczak * http://www.inspirel.com

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: