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í
×
    včera 18:55 | IT novinky

    Společnost Valve publikovala přehled To nej roku 2025 ve službě Steam aneb ohlédnutí za nejprodávanějšími, nejhranějšími a dalšími nej hrami roku 2025.

    Ladislav Hagara | Komentářů: 0
    včera 16:11 | Komunita

    Byly publikovány výsledky průzkumu mezi uživateli Blenderu uskutečněného v říjnu a listopadu 2025. Zúčastnilo se více než 5000 uživatelů.

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

    V dokumentově orientované databázi MongoDB byla nalezena a v upstreamu již opravena kritická bezpečností chyba CVE-2025-14847 aneb MongoBleed.

    Ladislav Hagara | Komentářů: 0
    29.12. 23:11 | IT novinky

    Při úklidu na Utažské univerzitě se ve skladovacích prostorách náhodou podařilo nalézt magnetickou pásku s kopií Unixu V4. Páska byla zaslána do počítačového muzea, kde se z pásky úspěšně podařilo extrahovat data a Unix spustit. Je to patrně jediný známý dochovaný exemplář tohoto 52 let starého Unixu, prvního vůbec programovaného v jazyce C.

    🇨🇽 | Komentářů: 1
    29.12. 15:55 | Komunita

    FFmpeg nechal kvůli porušení autorských práv odstranit z GitHubu jeden z repozitářů patřících čínské technologické firmě Rockchip. Důvodem bylo porušení LGPL ze strany Rockchipu. Rockchip byl FFmpegem na porušování LGPL upozorněn již téměř před dvěma roky.

    🇨🇽 | Komentářů: 7
    29.12. 15:44 | Zajímavý software

    K dispozici je nový CLI nástroj witr sloužící k analýze běžících procesů. Název je zkratkou slov why-is-this-running, 'proč tohle běží'. Klade si za cíl v 'jediném, lidsky čitelném, výstupu vysvětlit odkud daný spuštěný proces pochází, jak byl spuštěn a jaký řetězec systémů je zodpovědný za to, že tento proces právě teď běží'. Witr je napsán v jazyce Go.

    🇨🇽 | Komentářů: 1
    29.12. 15:33 | Zajímavý software

    Yazi je správce souborů běžící v terminálu. Napsán je v programovacím jazyce Rust. Podporuje asynchronní I/O operace. Vydán byl v nové verzi 25.12.29. Instalovat jej lze také ze Snapcraftu.

    Ladislav Hagara | Komentářů: 0
    26.12. 18:44 | Komunita

    Od soboty do úterý probíhá v Hamburku konference 39C3 (Chaos Communication Congress) věnovaná také počítačové bezpečnosti nebo hardwaru. Program (jiná verze) slibuje řadu zajímavých přednášek. Streamy a záznamy budou k dispozici na media.ccc.de.

    Ladislav Hagara | Komentářů: 0
    26.12. 13:22 | Zajímavý software

    Byl představen nový Xserver Phoenix, kompletně od nuly vyvíjený v programovacím jazyce Zig. Projekt Phoenix si klade za cíl být moderní alternativou k X.Org serveru.

    🇨🇽 | Komentářů: 7
    26.12. 13:11 | Nová verze

    XLibre Xserver byl 21. prosince vydán ve verzi 25.1.0, 'winter solstice release'. Od založení tohoto forku X.Org serveru se jedná o vůbec první novou minor verzi (inkrementovalo se to druhé číslo v číselném kódu verze).

    🇨🇽 | Komentářů: 0
    Kdo vám letos nadělí dárek?
     (33%)
     (1%)
     (23%)
     (1%)
     (2%)
     (1%)
     (11%)
     (11%)
     (17%)
    Celkem 195 hlasů
     Komentářů: 21, poslední včera 18:58
    Rozcestník

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

    17.12.2010 10:37 krb | blog: herni_blog
    C++ měření času
    Přečteno: 1241×
    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.