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 00:44 | Nová verze

    Byla vydána nová verze 3.22.0 grafického vývojového prostředí a platformy Gambas (Wikipedie) založené na interpretru programovacího jazyka Basic s rozšířením o objektově orientované programování. Přehled novinek v poznámkách k vydání. Zdrojové kódy jsou k dispozici na GitLabu.

    Ladislav Hagara | Komentářů: 0
    včera 20:22 | Komunita

    FreeBSD odstranilo poslední GPL kód ze základního systému. Konkrétně dpv, libdpv, libfigpar a dialog. Instalátor před čtyřmi lety přešel z dialogu na bsddialog.

    Ladislav Hagara | Komentářů: 0
    včera 15:22 | IT novinky

    Sociální síti 𝕏 (dříve Twitter) má dnes 20 let. Pro veřejnost byla zpřístupněna 15. července 2006.

    Ladislav Hagara | Komentářů: 1
    včera 14:22 | Zajímavý software

    Insula Faktury je open source generátor faktur, který běží přímo ve webovém prohlížeči. Žádná registrace, žádné sledování, žádné omezení. Zdrojové kódy jsou k dispozici na Codebergu.

    Ladislav Hagara | Komentářů: 7
    včera 13:22 | Komunita

    První Mobile Linux Hackday v Plzni, tj. komunitní setkání věnované Linuxu na mobilních zařízeních, proběhne 24. července od 10:00. Akce je otevřená všem zájemcům – od zvědavců po zkušené vývojáře. Dopoledne proběhnou přednášky Davida Heidelberga a Petra Hodiny o aktuálním stavu mobilního Linuxu: proč vůbec chtít tučňáka v kapse, jaké telefony jsou dnes dobře podporované a co taková podpora obnáší. Po obědě se zaměříme na konkrétní

    … více »
    Ladislav Hagara | Komentářů: 0
    14.7. 19:33 | Nová verze

    3D software Blender byl vydán ve verzi 5.2 s prodlouženou podporou. Videopředstavení na YouTube.

    Ladislav Hagara | Komentářů: 0
    14.7. 16:55 | Zajímavý software

    SketchForge 3D (GitHub, reddit) je open source 3D editor / CAD běžící ve webovém prohlížeči bez nutnosti účtu nebo cloudového úložiště. Inspirovaný byl Tinkercadem. Doporučena je lokální instalace.

    Ladislav Hagara | Komentářů: 0
    14.7. 12:44 | Nová verze

    Byla vydána nová verze 11.9 webového prohlížeče Midori (Wikipedie, GitHub). S novým centrem ovládání, pokročilejším blokováním reklam, optimalizací výkonu…

    Ladislav Hagara | Komentářů: 0
    14.7. 04:22 | Zajímavý projekt

    Na Crowd Supply běží kampaň na podporu open source čtečky elektronických knih Open Book Touch. Postavena je na ESP32-S3. Má 4,26palcový dotykový e-papírový displej s rozlišením 480×800 pixelů, podsvícení, slot na microSD kartu. Cena je 149 dolarů a poštovné 12 dolarů. Dodání je plánováno na duben 2027.

    Ladislav Hagara | Komentářů: 8
    13.7. 18:00 | IT novinky

    Na Humble Bundle běží akce Linux: All the Things by O'Reilly a Picos, HATs, and More by Raspberry Pi Press. Elektronické knihy lze koupit se slevou a současně podpořit organizace Code for America a Raspberry Pi Foundation.

    Ladislav Hagara | Komentářů: 5
    Které desktopové prostředí na Linuxu používáte?
     (11%)
     (7%)
     (2%)
     (17%)
     (31%)
     (4%)
     (6%)
     (2%)
     (15%)
     (25%)
    Celkem 2131 hlasů
     Komentářů: 30, poslední 3.4. 20:20
    Rozcestník


    Dotaz: C++ měření času

    17.12.2010 10:37 krb | blog: herni_blog
    C++ měření času
    Přečteno: 1279×
    Zdravím, potřeboval bych do jednoho programu, který píšu v C++ zapasovat měření času, resp. odpočítávání 30 vteřin a jakmile by je odpočítal, spustilo by to nějaký proces nebo funkci. Nevíte si s tím někdo rady?

    Řešení dotazu:


    Odpovědi

    17.12.2010 10:45 jam001 | skóre: 19
    Rozbalit Rozbalit vše Re: C++ měření času
    pomoze sleep?
    17.12.2010 10:52 Šangala | skóre: 56 | blog: Dutá Vrba - Wally
    Rozbalit Rozbalit vše Re: C++ měření času
    V nejhorším čas můžete měřit pomocí gettimeofday() a v cyklu si to kontrolovat a udělat „bum“ po daném intervalu.
    V trochu lepším případě můžete udělat smyčku ze sleep(30) a před tím nebo za tím udělat „bum“.
    Nebo můžete spustit thread (#include <pthread.h>) a pomocí pthread_cond_timedwait() ve smyčce udělat „bum“.
    Nebo použít libovolný timer.
    To, že trpíš stihomamem, ještě neznamená, že po tobě nejdou. ⰞⰏⰉⰓⰀⰜⰉ ⰗⰞⰅⰜⰘ ⰈⰅⰏⰉ ⰒⰑⰎⰉⰁⰕⰅ ⰏⰉ ⰒⰓⰄⰅⰎ ·:⁖⁘⁙†
    17.12.2010 11:20 l4m4
    Rozbalit Rozbalit vše Re: C++ měření času
    Pokud má program GUI, tak se povídej do dokumentace toolkitu, timery jsou běžně součástí smyčky událostí (byť ne velmi přesné).

    Na nízké úrovni naopak můžeš použít setitimer() a přijde ti SIGALARM.
    AraxoN avatar 17.12.2010 11:29 AraxoN | skóre: 47 | blog: slon_v_porcelane | Košice
    Rozbalit Rozbalit vše Re: C++ měření času
    Cez signal() si nahodíš handler na SIGALRM a cez alarm() si nastavíš kedy sa má spustiť.

    Viď tiež:
    man 2 signal
    man 2 alarm
    17.12.2010 15:38 krb | blog: herni_blog
    Rozbalit Rozbalit vše Re: C++ měření času
    
    int main()
    {
      cout << "Ahoj";
      sleep(2);
      cout << " Jak je?";
      cout << endl;
      
      return 0;
    }
    Pokud do zdroje vložím tento kód, tak to sice funguje, ale program po 2 sekundách napíšech Ahoj Jak je? a přitom by měl napsat Ahoj a po dvou sekundách Jak je? Nevíte v čem mám chybu?
    Vojta Drbohlav avatar 17.12.2010 15:44 Vojta Drbohlav | skóre: 26 | blog: Blog | Strahov
    Rozbalit Rozbalit vše Re: C++ měření času
    Za cout << "Ahoj" musíš použít funkci ostream::flush() a nebo std::cout << std::endl;, který vypíše nový řádek a provede flush.
    17.12.2010 15:51 krb | blog: herni_blog
    Rozbalit Rozbalit vše Re: C++ měření času
    Jo, díky, teď už to funguje. A nevíš jak bych mohl udělat, aby vlastně po sleep(2) napsal něco jinýho na stejné místo, kde bylo to předchozí a to předchozí vymazal? Jako že když chci udělat odpočítávání tak
    cout << "0:30"
    sleep(1);
    cout << "0:29 /na stejné místo jako bylo 0:30
    17.12.2010 16:30 Michal Kubeček | skóre: 71 | Luštěnice
    Rozbalit Rozbalit vše Re: C++ měření času
    Můžete použít backspace ('\b') nebo rovnou CR ('\r'). Pravděpodobně také bude potřeba dát tam flush kvůli bufferování výstupu.
    17.12.2010 16:42 krb | blog: herni_blog
    Rozbalit Rozbalit vše Re: C++ měření času
    Tak mi to nešlo, protože na předchozí řádek se to nevrátí. Ale pak jsem přišel jak na to, místo
    std::cout << std::endl
    jsem napsal
    std::cout << std::flush;
    a už se to přepisuje. Takže jinak díky za rady :)
    17.12.2010 21:52 krb | blog: herni_blog
    Rozbalit Rozbalit vše Re: C++ měření času
    Tak jsem se během psaní potkal s dalším problémem. V programu jsem si vytvořil funkci timer();, která odpočítává 30 vteřin. V jedné části má uživatel právě 30 vteřin na rozhodnutí se, co zvolí za volbu. Vypadá to asi nějak takhle:

    Vyberte: 1) ano 2) ne >> 0:30

    Ale problém je v tom, že kurzor si sám najede na to odpočítávání 0:30 a přitom by měl být za
    >>
    těmito znaky.
    18.12.2010 03:54 zulu
    Rozbalit Rozbalit vše Re: C++ měření času
    tak ho tam posuň
    19.12.2010 19:35 krb | blog: herni_blog
    Rozbalit Rozbalit vše Re: C++ měření času
    To právě nejde, ono to prostě kurzorem najede na to odpočítávání a ten výstup napíše až to odpočítá

    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.