abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    dnes 14:22 | IT novinky

    VASA-1, výzkumný projekt Microsoftu. Na vstupu stačí jediná fotka a zvukový záznam. Na výstupu je dokonalá mluvící nebo zpívající hlava. Prý si technologii nechá jenom pro sebe. Žádné demo, API nebo placená služba. Zatím.

    Ladislav Hagara | Komentářů: 0
    dnes 04:44 | Nová verze

    Nová čísla časopisů od nakladatelství Raspberry Pi: MagPi 140 (pdf) a HackSpace 77 (pdf).

    Ladislav Hagara | Komentářů: 0
    dnes 01:00 | Nová verze

    ESPHome, tj. open source systém umožňující nastavovat zařízení s čipy ESP (i dalšími) pomocí konfiguračních souborů a připojit je do domácí automatizace, například do Home Assistantu, byl vydán ve verzi 2024.4.0.

    Ladislav Hagara | Komentářů: 0
    včera 22:11 | IT novinky Ladislav Hagara | Komentářů: 0
    včera 20:55 | Nová verze

    Neziskové průmyslové konsorcium Khronos Group vydalo verzi 1.1 specifikace OpenXR (Wikipedie), tj. standardu specifikujícího přístup k platformám a zařízením pro XR, tj. platformám a zařízením pro AR (rozšířenou realitu) a VR (virtuální realitu). Do základu se z rozšíření dostalo XR_EXT_local_floor. Společnost Collabora implementuje novou verzi specifikace do platformy Monado, tj. open source implementace OpenXR.

    Ladislav Hagara | Komentářů: 2
    včera 17:22 | Nová verze

    Byla vydána nová verze 0.38.0 multimediálního přehrávače mpv (Wikipedie) vycházejícího z přehrávačů MPlayer a mplayer2. Přehled novinek, změn a oprav na GitHubu. Požadován je FFmpeg 4.4 nebo novější a také libplacebo 6.338.2 nebo novější.

    Ladislav Hagara | Komentářů: 13
    včera 17:11 | Nová verze

    ClamAV (Wikipedie), tj. multiplatformní antivirový engine s otevřeným zdrojovým kódem pro detekci trojských koní, virů, malwaru a dalších škodlivých hrozeb, byl vydán ve verzích 1.3.1, 1.2.3 a 1.0.6. Ve verzi 1.3.1 je mimo jiné řešena bezpečnostní chyba CVE-2024-20380.

    Ladislav Hagara | Komentářů: 2
    včera 12:11 | IT novinky

    Digitální a informační agentura (DIA) oznámila (PDF, X a Facebook), že mobilní aplikace Portál občana je ode dneška oficiálně venku.

    Ladislav Hagara | Komentářů: 10
    včera 05:11 | Komunita

    #HACKUJBRNO 2024, byly zveřejněny výsledky a výstupy hackathonu města Brna nad otevřenými městskými daty, který se konal 13. a 14. dubna 2024.

    Ladislav Hagara | Komentářů: 2
    17.4. 17:55 | IT novinky

    Společnost Volla Systeme stojící za telefony Volla spustila na Kickstarteru kampaň na podporu tabletu Volla Tablet s Volla OS nebo Ubuntu Touch.

    Ladislav Hagara | Komentářů: 3
    KDE Plasma 6
     (68%)
     (10%)
     (2%)
     (20%)
    Celkem 563 hlasů
     Komentářů: 4, poslední 6.4. 15:51
    Rozcestník

    Dotaz: Knihovna s event looper

    5.2.2016 13:31 Petr
    Knihovna s event looper
    Přečteno: 265×
    Pro svůj projekt hledám knihovnu implementující nějakou smyčku událostí, v C.

    Měla by umět pollovat file descriptory a zavolat příslušný callback. Je mi jedno, jestli bude používat poll nebo epoll, moc jich nebude. Měla by obsahovat prioritní frontu, kam můžete přidat callback. Pro případ, kdy by tohle nebylo thread safe, tak ještě další obyčejnou frontu, kam můžete přidat callback z jiného vlákna a bude spuštěn z vlákna, ve kterém běží smyčka. Podpora časovačů, rozlišení stačí na milisekundy.

    Co by neměla mít. Jiné závislosti než C knihovna a rozumně starý linuxový kernel (řekněme 4.0+). Neměla by mi nutit nějaké abstrakce nad dalšími věcmi jako vlákna, mutexy, apod, nejlépe, kdyby je neměla vůbec.

    Neměla by moc alokovat, nejlépe jen při jejím vytvoření. Např. přidání callbacku by mělo být no-fail za předpokladu, když už mám vytvořenou strukturu pro ten callback, třeba i na zásobníku (kdy pak je moje povinost zajistit, že žije dost dlouho).

    Zkoušel jsem se podívat na libuv. Ale. Příliš mnoho abstrakcí nad nepotřebnými věcmi (vlákna, soubory). Používá identifikátory vyhrazené pro implementaci překladače a C knihovny (dvojtá podtržítka, struktury s _t na konci). Spousta zbytečných vlastností. Volá na některých místech abort(), když něco selže, to je nepřijatelné. Nedovoluje mi zavolat callback v rámci smyčky běžící v druhém vlákně (uv_async nedostačuje, ten musíte předvytvořit ve vlákně, kde smyčka běží a v durhém vlákně ho smíte jen poslat a né modifikovat). Má fallbacky pro různá systémová volání, když např. není podporován někde O_CLOEXEC či novější systémové volání, kde se dá tento flag předat, udělá fallback na staré a CLOEXEC nastaví až potom přes fnctl. To je nepřijatelné, protože mi vyváří race-condition ve vícevláknové aplikaci, správně je vrátit chybu.

    Přemýšlím napsat něco vlastního, ale pokud už něco existuje, bylo by to lepší.

    Odpovědi

    5.2.2016 15:39 vbar
    Rozbalit Rozbalit vše Re: Knihovna s event looper
    libevent
    6.2.2016 00:27 Jardík
    Rozbalit Rozbalit vše Re: Knihovna s event looper
    Kdyby nevadila ta alokace, tak bych doporučil systemd, respektive libsystemd a jeho součást sd-event. Bohužel to alokuje.

    Založit nové vláknoNahoru

    Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.