abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
AbcLinuxu hledá autory!
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    dnes 12:22 | Pozvánky

    Korespondenční seminář z programování (KSP) pražského Matfyzu pořádá i letos jarní soustředění pro začátečníky. Zváni jsou všichni středoškoláci a starší základoškoláci, kteří se chtějí naučit programovat, lépe uvažovat o informatických úlohách a poznat nové podobně smýšlející kamarády. Úplným začátečníkům bude určen kurz základů programování a kurz základních algoritmických dovedností, pokročilejším nabídneme různorodé

    … více »
    skywalqer | Komentářů: 0
    včera 04:11 | Komunita

    Fedora je od 10. února dostupná v Sýrii. Sýrie vypadla ze seznamu embargovaných zemí a Fedora Infrastructure Team mohl odblokovat syrské IP adresy.

    Ladislav Hagara | Komentářů: 20
    včera 03:44 | Zajímavý projekt

    Ministerstvo zahraničí Spojených států amerických vyvíjí online portál Freedom.gov, který umožní nejenom uživatelům v Evropě přístup k obsahu blokovanému jejich vládami. Portál bude patrně obsahovat VPN funkci maskující uživatelský provoz tak, aby se jevil jako pocházející z USA. Projekt měl být původně představen již na letošní Mnichovské bezpečnostní konferenci, ale jeho spuštění bylo odloženo.

    NUKE GAZA! 🎆 | Komentářů: 17
    včera 03:33 | Komunita

    Byla vydána pro lidi zdarma ke stažení kniha The Book of Remind věnovaná sofistikovanému kalendáři a připomínači Remind.

    Ladislav Hagara | Komentářů: 1
    21.2. 23:55 | Nová verze

    Grafický editor dokumentů LyX, založený na TeXu, byl vydán ve verzi 2.5.0. Oznámení připomíná 30. výročí vzniku projektu. Novinky zahrnují mj. vylepšení referencí nebo použití barev napříč aplikací, od rozhraní editoru po výstupní dokument.

    |🇵🇸 | Komentářů: 0
    21.2. 15:00 | Komunita

    F-Droid bannerem na svých stránkách a také v aplikacích F-Droid a F-Droid Basic upozorňuje na iniciativu Keep Android Open. Od září 2026 bude Android vyžadovat, aby všechny aplikace byly registrovány ověřenými vývojáři, aby mohly být nainstalovány na certifikovaných zařízeních Android. To ohrožuje alternativní obchody s aplikacemi jako F-Droid a možnost instalace aplikací mimo oficiální obchod (sideloading).

    Ladislav Hagara | Komentářů: 25
    20.2. 16:33 | Nová verze

    Svobodná historická realtimová strategie 0 A.D. (Wikipedie) byla vydána ve verzi 28 (0.28.0). Její kódový název je Boiorix. Představení novinek v poznámkách k vydání. Ke stažení také na Flathubu a Snapcraftu.

    Ladislav Hagara | Komentářů: 2
    20.2. 04:44 | Nová verze

    Multimediální server a user space API PipeWire (Wikipedie) poskytující PulseAudio, JACK, ALSA a GStreamer rozhraní byl vydán ve verzi 1.6.0 (Bluesky). Přehled novinek na GitLabu.

    Ladislav Hagara | Komentářů: 1
    20.2. 01:11 | Nová verze

    UBports, nadace a komunita kolem Ubuntu pro telefony a tablety Ubuntu Touch, vydala Ubuntu Touch 24.04-1.2 a 20.04 OTA-12.

    Ladislav Hagara | Komentářů: 0
    19.2. 18:00 | Nová verze

    Byla vydána (Mastodon, 𝕏) nová stabilní verze 2.0 otevřeného operačního systému pro chytré hodinky AsteroidOS (Wikipedie). Přehled novinek v oznámení o vydání a na YouTube.

    Ladislav Hagara | Komentářů: 1
    Které desktopové prostředí na Linuxu používáte?
     (18%)
     (6%)
     (0%)
     (11%)
     (27%)
     (2%)
     (5%)
     (1%)
     (12%)
     (26%)
    Celkem 936 hlasů
     Komentářů: 25, poslední 3.2. 19:50
    Rozcestník

    Dotaz: Vlakna a mutex v C++

    13.8.2012 10:57 bajo21
    Vlakna a mutex v C++
    Přečteno: 619×
    Cavte, mam taku otazku. C++.
    Mam zakladny beh aplikacie a z neho vytvaram vlakna (boost::thread), tam bezi (USB kamera, AVI player, RS232 virtual port). Problem vysvetlim na objekte std::cout . Jedna sa o staticky objekt, globalne deklarovany, ktory pouziva pretazny operator << ;
    Podobne
    cout << "vypis" << premenna;
    si robim vypisovanie v konzole, objekt std::cout sa ale moze volat pre vypis bud z hlavnej aplikacie alebo z vlaknien. Podla vas je nutne kazde volanie objektu std::cout << nieco; uzamikat mutexom (boost::mutex)? Lebo mi aplikacia pada po par dnoch a neviem, ci to moze byt tym, ze saham v rovnakom case z roznych vlakien do rovnakej pamate objektu std::cout; . Dik za radu :).

    Odpovědi

    13.8.2012 11:39 Dadam | skóre: 12 | blog: dadamovo
    Rozbalit Rozbalit vše Re: Vlakna a mutex v C++
    Já jsem výpis (v mém případě do logu) řešil tak, že jsem si udělal třídu Log, která se chová jako istream, v destruktoru si zamkne soubor statickým mutexem a zaráz do něj zapíše co má. Použití by pak vypadá nějak takto:
    Log() << "velikost cehosi: " << cosi.velikost();
    Co se týče pádu po několika dnech, nemáš tam memory leak? Zkus to projet valgrindem, zkus si pomocí htop zjistit co ta aplikace po pár dnech zabere (valgrind ti nezjistí virtuální úniky).
    A i B mají svoje výhody a nevýhody. Vyberte si to, co vám vyhovuje víc, a necpěte A tam, kam patří B.
    13.8.2012 11:40 vvv
    Rozbalit Rozbalit vše Re: Vlakna a mutex v C++
    Mozna je tohle do budoucna reseno novym memory modelem a vlakny, ale v tuhle chvili bych rekl, ze se na to obecne spolehat nemuzes, rozhodne ne na vsech platformach.
    13.8.2012 13:41 Ivan
    Rozbalit Rozbalit vše Re: Vlakna a mutex v C++
    Na podobny logovani jsem pouzil clanek, ktery napsal John Torjo:

    http://articles.techrepublic.com.com/5100-10878_11-5072104.html#

    Trochu jsem to prekopal, a nakonec jsem dospel k tomuhle: https://tora.svn.sourceforge.net/svnroot/tora/branches/tora3/src/ts_log

    Ber to s hodne velkou rezervou, neni to kod na kterej bych byl pysnej. Dneska si myslim, ze pouzivani streamu na logovani je zbytecne slozity a nic to neprinasi.

    PS: nedelas to nahodou na woknach? Jeste pred lety byly se na MSVC velky problemy - memory leaky, segfaulty.
    13.8.2012 13:50 bajo21
    Rozbalit Rozbalit vše Re: Vlakna a mutex v C++
    Ja pouzivam automaticku spravu pamate, nieco ako (boost shared_ptr), tak memory leak je malo pravdepodobny a pozorujem RAM pre GPU aj CPU, ale neviem ako je na tom CACHE :). Robim OpenGL, v okne :). Tiez mam podobne spraveny log system, len ho nemam chraneny mutexom, mozno je aj v tom problem, musim to pozriet, ale vysledok budem vediet tak o tyzden, zalezi kedy to spadne :). Dakujem za rady :).
    13.8.2012 15:42 Sten
    Rozbalit Rozbalit vše Re: Vlakna a mutex v C++
    Samozřejmě to možné je, ale je to velice velice nepravděpodobné. Zkusil jste alspoň získat backtrace nebo jenom tak naslepo hádáte?

    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.