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í
×
    včera 18:33 | Nová verze

    Byla vydána (𝕏) nová verze 24.7 open source firewallové a routovací platformy OPNsense (Wikipedie). Jedná se o fork pfSense postavený na FreeBSD. Kódový název OPNsense 24.7 je Thriving Tiger. Přehled novinek v příspěvku na fóru.

    Ladislav Hagara | Komentářů: 0
    včera 05:11 | Bezpečnostní upozornění

    Binarly REsearch upozorňuje na bezpečnostní problém PKFail (YouTube) v ekosystému UEFI. Stovky modelů zařízení používají pro Secure Boot testovací Platform Key vygenerovaný American Megatrends International (AMI) a jeho privátní část byla při úniku dat prozrazena. Do milionů zařízení (seznam v pdf) po celém světě tak útočníci mohou do Secure Bootu vložit podepsaný malware. Otestovat firmware si lze na stránce pk.fail. Ukázka PoC na Linuxu na Windows na YouTube.

    Ladislav Hagara | Komentářů: 11
    včera 02:22 | Nová verze

    Mobilní operační systém /e/OS (Wikipedie) založený na Androidu / LineageOS, ale bez aplikací a služeb od Googlu, byl vydán ve verzi 2.2 (Mastodon, 𝕏). Přehled novinek na GitLabu. Vypíchnuta je rodičovská kontrola.

    Ladislav Hagara | Komentářů: 2
    včera 01:22 | IT novinky

    Společnost OpenAI představila vyhledávač SearchGPT propojující OpenAI modely umělé inteligence a informace z webů v reálném čase. Zatím jako prototyp pro vybrané uživatele. Zapsat se lze do pořadníku čekatelů.

    Ladislav Hagara | Komentářů: 0
    včera 00:11 | Nová verze

    Distribuce Linux Mint 22 „Wilma“ byla vydána. Je založená na Ubuntu 24.04 LTS, ale s desktopovým prostředím Cinnamon (aktuálně verze 6.2), příp. MATE nebo Xfce, balíkem aplikací XApp, integrací balíčků Flatpak a dalšími změnami. Více v přehledu novinekpoznámkách k vydání.

    Fluttershy, yay! | Komentářů: 2
    25.7. 17:44 | Zajímavý článek Ladislav Hagara | Komentářů: 2
    25.7. 17:22 | Nová verze

    Byla vydána nová verze 14 integrovaného vývojového prostředí (IDE) Qt Creator. Podrobný přehled novinek v cgitu. Vypíchnout lze podporu rozšíření v Lua.

    Ladislav Hagara | Komentářů: 0
    25.7. 17:11 | Nová verze

    Byla vydána verze 1.80.0 programovacího jazyka Rust (Wikipedie). Podrobnosti v poznámkách k vydání. Vyzkoušet Rust lze například na stránce Rust by Example.

    Ladislav Hagara | Komentářů: 0
    25.7. 14:11 | IT novinky

    Apple oznámil, že v beta verzi spustil své Apple Maps na webu. Podporován je také webový prohlížeč Chrome. Ne však na Linuxu.

    Ladislav Hagara | Komentářů: 23
    25.7. 13:11 | IT novinky

    Portál Stack Overflow po roce opět vyzpovídal své uživatele, jedná se především o vývojáře softwaru, a zveřejnil detailní výsledky průzkumu. Průzkumu se letos zúčastnilo více než 65 tisíc vývojářů. Z Česka jich bylo 710. Ze Slovenska 246.

    Ladislav Hagara | Komentářů: 0
    Rozcestník

    Dotaz: pthreads - prosím o kontrolu

    30.11.2009 10:12 tomas
    pthreads - prosím o kontrolu
    Přečteno: 363×
    Příloha:
    Zdravím,

    Jako programátor-samouk bych chtěl poprosit místní odborníky s následující situací: chci program který bude měnit data simultánně v několika vláknech, pak vlákna zastaví a provede nějakou souhrnnou operaci na všech datech, pak vlákna opět spustí a provede něco simultánně, a to celé se několikrát zopakuje.

    Můj návrh programu je přiložen.

    Program běží jak má, ale nejsem si jistý, jestli jsem tam nezapomněl nějakou náhodně se chovající chybu. Zejména si nejsem jistý, zda za ř. 54 nemůže dojít k nějaké nechtěné modifikaci mutexu či podmínky dřív, než řádek 118 zareaguje na signál poslaný před ř. 54.

    Umí někdo říct, zda uvedené řešení je správně?

    Díky.

    Odpovědi

    30.11.2009 14:43 Sinuhet | skóre: 31
    Rozbalit Rozbalit vše Re: pthreads - prosím o kontrolu
    Jak je to poskladano dohromady je to OK, rekl bych. Ale prijde mi to prilis komplikovane a neprehledne, pro zacatek bych doporucoval pouzit pthread_barrier_*.
    30.11.2009 16:00 tomas
    Rozbalit Rozbalit vše Re: pthreads - prosím o kontrolu
    Díky, podívám se, co ten barrier umí.
    30.11.2009 16:42 tomas
    Rozbalit Rozbalit vše Re: pthreads - prosím o kontrolu
    Příloha:
    Ten barrier se opravdu celkem hodí, kód se zkrátil a zpřehlednil. Pokud by někdy někdo řešil podobný problém, přikládám upravený kód.
    30.11.2009 18:57 Boris Dušek | skóre: 22 | blog: everything
    Rozbalit Rozbalit vše Re: pthreads - prosím o kontrolu
    Jen poznámka k tomu cyklu "Do something", který má trošku zdržet - jelikož ani i, ani j se nepoužívají k žádnému dalšímu výpočtu ani jako parametry volání nějaké funkce, tak při nastavení optimalizace (třeba gcc -O2) kompilátor usoudí, že ten cyklus nic nemění a ten for cyklus vůbec do výsledného kódu nedá. Proto je třeba označit proměnné i,j jako "volatile", aby překladač bral každé čtení a zápis do i, j jako něco, co může mít vedlejší efekty (což je myslím definice "volatile" v C), a tím pádem i vliv na korektnost programu. Když jsem dal "volatile int i, j;", tak už tam ten for cyklus i při optimalizaci nechal.
    vim ~/.emacs
    30.11.2009 19:17 Michal Kubeček | skóre: 72 | Luštěnice
    Rozbalit Rozbalit vše Re: pthreads - prosím o kontrolu
    Ještě lepší by samozřejmě bylo použít např. nanosleep().
    30.11.2009 20:36 tomas
    Rozbalit Rozbalit vše Re: pthreads - prosím o kontrolu
    Jasně - já to zkoušel bez optimalizace; nakonec se mi ale stejně jako lepší generátor zdržení osvědčilo prostě spustit program v gdb a pomocí break pointu zarazit jedno vlákno, zatímco zbytek pokračoval (pomocí toho jsem odhalil pár prvních chyb).
    3.12.2009 00:02 vencas | skóre: 32
    Rozbalit Rozbalit vše Re: pthreads - prosím o kontrolu
    Podívejte se na OpenMP. Na typy úloh, kde se OpenMP hodí, je kód pak o dost přehlednější, ale nevím, jestli je to váš případ. Mně to funguje výborně.

    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.