Vydělávej až 160.000 Kč měsíčně! Akreditované rekvalifikační kurzy s garancí práce od 0 Kč. Více informací.
Hledáme nové posily do ITnetwork týmu. Podívej se na volné pozice a přidej se do nejagilnější firmy na trhu - Více informací.

Diskuze: Program v pozadí

Aktivity
Avatar
Jakub Málek
Člen
Avatar
Jakub Málek:13.2.2017 20:50

Zdravím,
chtěl bych se zeptat jestli jde nějak v c++ (konzolová aplikace) udělat část kódu, která poběží v pozadí celého programu.

Př. :
"Jakože bych měl, nějaký program a v pozadí by se mi přičítaly sekundy, které již uplynuly. "

Zda-li je toto nějak možné byl bych rád za rady.

Jakub

Editováno 13.2.2017 20:50
 
Odpovědět
13.2.2017 20:50
Avatar
DarkCoder
Člen
Avatar
Odpovídá na Jakub Málek
DarkCoder:13.2.2017 23:13

Vše co nevypisuješ na standartní výstup a zpracováváš běží na pozadí. Třeba funkce clock() Ti vrací počet tiknutí systémových hodin od začátku spuštění programu. Vydělíš-li to makrem CLOCKS_PER_SEC, dostaneš počet sekund. Voláním výstupních funkcí s danými argumenty zobrazuješ výsledky.

Nahoru Odpovědět
13.2.2017 23:13
"I ta nejlepší poučka postrádá na významu, není-li patřičně předána." - DarkCoder
Avatar
Martin Dráb
Tvůrce
Avatar
Odpovídá na Jakub Málek
Martin Dráb:13.2.2017 23:46

Pokud potřebuješ, aby program dělal více věcí najednou (zejména na vícejádrovém procesoru), tak k tomuto účelu slouží vlákna; každé vlákno lze velmi zjednodušeně chápat jako samostatnou funkci, která se vykonává nezávisle na ostatních.

V C++ je mechanika vláken zapouzdřena ve třídě std::thread. Problematika je to ale dosti složitá.

Nahoru Odpovědět
13.2.2017 23:46
2 + 2 = 5 for extremely large values of 2
Avatar
David Novák
Tvůrce
Avatar
Odpovídá na Jakub Málek
David Novák:14.2.2017 9:24

O využití vláken v C tu již něco je (a mám v plánu v brzké době dopsat další) a v C++ je to v zásadě to stejné (jen zabalené).. Můžeš ale ve stejné aplikaci použít i přímo C kód, pokud se ti to nechce studovat.

http://www.itnetwork.cz/…paralelismus

Nahoru Odpovědět
14.2.2017 9:24
Chyba je mezi klávesnicí a židlí.
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 4 zpráv z 4.