Přidat otázku mezi oblíbenéZasílat nové odpovědi e-mailem Multithread aplikace a zadávání příkazů

Mám několik threadů v konzolové aplikaci. Jeden hlavní thread slouží pro zadávání příkazů. Používám std::getline(std::cin, str); Další thready provádí různé operace a občas potřebují, aby zapsali nějaký výstup (normálně přes std:cin..). Je to vždy nějaký text zakončený novým řádkem. Jenže když jsem v půlce zadávání příkazu, tak to "rozpůlí" ten příkaz a vypadá to blbě. Lepší bude nějaký příklad na pochopení jak to vypadá.

text z nejakeho threadu
text z nejakeho threadu
ted_pisu_pr<text z nejakho threadu>
ikaz

Představoval bych si to, že když se má vložit nějaký text, tak ten příkaz co píšu to hodí vždy na konec. Jenže nevím jak na to :(

Předmět Autor Datum
obecně: udělej si další thread pro výstup, prostě do něj chronologicky "sáčkuj" výstup a buď jej zob…
touchwood 09.07.2011 13:14
touchwood
Asi zkusím udělat tu druhou variantu, protože potřebuju vypisovat ten výstup v reálném čase a nechci… poslední
Loric 10.07.2011 17:11
Loric

obecně: udělej si další thread pro výstup, prostě do něj chronologicky "sáčkuj" výstup a buď jej zobrazuj v novém okně, nebo si napiš rutinu, která bude "hlídat" vstup a do okamžiku kdy jej nevložíš nedojde ker spuštění výpisu. Nebo druhá varianta - vstup vlož do bufferu, smaž, přepiš výstupem a na nový řádek vlož znova.

Zpět do poradny Odpovědět na původní otázku Nahoru