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í
×
eParkomat, startup z ČR, postoupil mezi finalisty evropského akcelerátoru ChallengeUp!
Robot na pivo mu otevřel dveře k opravdovému byznysu
Internet věcí: Propojený svět? Už se to blíží...
včera 21:21 | Nová verze Ladislav Hagara | Komentářů: 0
včera 11:44 | Zajímavý projekt

Na Indiegogo byla spuštěna kampaň na podporu herní mini konzole a multimediálního centra RetroEngine Sigma od Doyodo. Předobjednat ji lze již od 49 dolarů. Požadovaná částka 20 000 dolarů byla překonána již 6 krát. Majitelé mini konzole si budou moci zahrát hry pro Atari VCS 2600, Sega Genesis nebo NES. Předinstalováno bude multimediální centrum Kodi.

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

Byla vydána verze 4.7 redakčního systému WordPress. Kódové označením Vaughan bylo vybráno na počest americké jazzové zpěvačky Sarah "Sassy" Vaughan. Z novinek lze zmínit například novou výchozí šablonu Twenty Seventeen, náhledy pdf souborů nebo WordPress REST API.

Ladislav Hagara | Komentářů: 1
6.12. 12:00 | Zajímavý projekt

Projekt Termbox umožňuje vyzkoušet si linuxové distribuce Ubuntu, Debian, Fedora, CentOS a Arch Linux ve webovém prohlížeči. Řešení je postaveno na projektu HyperContainer. Podrobnosti v často kladených dotazech (FAQ). Zdrojové kódy jsou k dispozici na GitHubu [reddit].

Ladislav Hagara | Komentářů: 26
6.12. 11:00 | Bezpečnostní upozornění

Byly zveřejněny informace o bezpečnostní chybě CVE-2016-8655 v Linuxu zneužitelné k lokální eskalaci práv. Chyba se dostala do linuxového jádra v srpnu 2011. V upstreamu byla opravena minulý týden [Hacker News].

Ladislav Hagara | Komentářů: 2
5.12. 22:00 | Komunita

Přibližně před měsícem bylo oznámeno, že linuxová distribuce SUSE Linux Enterprise Server (SLES) běží nově také Raspberry Pi 3 (dokumentace). Obraz verze 12 SP2 pro Raspberry Pi 3 je ke stažení zdarma. Pro registrované jsou po dobu jednoho roku zdarma také aktualizace. Dnes bylo oznámeno, že pro Raspberry Pi 3 je k dispozici také nové openSUSE Leap 42.2 (zprávička). K dispozici je hned několik obrazů.

Ladislav Hagara | Komentářů: 6
5.12. 06:00 | Zajímavý software

OMG! Ubuntu! představuje emulátor terminálu Hyper (GitHub) postavený na webových technologiích (HTML, CSS a JavaScript). V diskusi k článku je zmíněn podobný emulátor terminálu Black Screen. Hyper i Black Screen používají framework Electron, stejně jako editor Atom nebo vývojové prostředí Visual Studio Code.

Ladislav Hagara | Komentářů: 50
5.12. 06:00 | Zajímavý článek

I letos vychází řada ajťáckých adventních kalendářů. QEMU Advent Calendar 2016 přináší každý den nový obraz disku pro QEMU. Programátoři se mohou potrápit při řešení úloh z kalendáře Advent of Code 2016. Kalendáře Perl Advent Calendar 2016 a Perl 6 Advent Calendar přinášejí každý den zajímavé informace o programovacím jazyce Perl. Stranou nezůstává ani programovací jazyk Go.

Ladislav Hagara | Komentářů: 10
3.12. 16:24 | Nová verze

Byla vydána Mageia 5.1. Jedná se o první opravné vydání verze 5, jež vyšla v červnu loňského roku (zprávička). Uživatelům verze 5 nepřináší opravné vydání nic nového, samozřejmě pokud pravidelně aktualizují. Vydání obsahuje všechny aktualizace za posledního téměř půldruhého roku. Mageia 5.1 obsahuje LibreOffice 4.4.7, Linux 4.4.32, KDE4 4.14.5 nebo GNOME 3.14.3.

Ladislav Hagara | Komentářů: 17
3.12. 13:42 | Pozvánky

V Praze probíhá konference Internet a Technologie 16.2, volné pokračování jarní konference sdružení CZ.NIC. Konferenci lze sledovat online na YouTube. K dispozici je také archiv předchozích konferencí.

Ladislav Hagara | Komentářů: 0
Kolik máte dat ve svém domovském adresáři na svém primárním osobním počítači?
 (32%)
 (23%)
 (29%)
 (7%)
 (5%)
 (3%)
Celkem 788 hlasů
 Komentářů: 50, poslední 29.11. 15:50
Rozcestník
Reklama

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

17.12.2010 10:37 krb | blog: herni_blog
C++ měření času
Přečteno: 1019×
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: 45 | 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
A fine is a tax for doing wrong. A tax is a fine for doing well.
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.