Linux hotkey

Michal Grunt michal.grunt na gmail.com
Neděle Září 19 12:13:34 CEST 2021


Vzhledem k tomu, že se jedná o jednoduchy "rezidentni" program, který jenom
čeká na stisk tlacitka a na základě toho spustí jiny program (nebo provede
jeho kill) tak to asi nebudu komplikovat. Pokud by se jednalo o tlacitko
kde by záleželo na každé ms tak bych musel uvažovat o nějaké podobné
metodě. Ale děkuji za info. Možná skončím jenom u usleep(200000) což je
ještě vyhovující z obou stran (prostředky vs odezva)... Ale je dobré vědět,
jaké jsou další možnosti (v podstatě jsem na ně ani nenarazil, když jsem
hledal metody odchyceni stisku tlacitka). Dekuji.

Dne so 18. 9. 2021 21:12 uživatel Miroslav Mraz <mrazik na volny.cz> napsal:

> Nevím jak je to napsané, ale pokud to čtení má vlastní vlákno, pak by
> snad mohlo pomoci místo usleep() použít něco jako
> std::this_thread::yield(), příp. sched_yield(), což ukončí běh vlákna a
> vrátí řízení plánovači a další čtení proběhne až plánovač opět vlákno
> spustí. Ale pořád to může sežrat dost procesorového času, možná je ten
> select čistší řešení, ale je to pracné a dneska už to zas tak moc
> nefrčí, spíš se používají ta vlákna (máme hodně jader, tak proč ne).
>
> Mrazík
>
> Dne 18. 09. 21 v 15:20 Michal Grunt napsal(a):
> > Vyzkouším to, děkuji. To bude asi ono.
> >
> > Dne pá 17. 9. 2021 16:02 uživatel Ladislav Vaiz <spam na nagano.cz
> > <mailto:spam na nagano.cz>> napsal:
> >
> >     Správné řešení pod linuxem je volat v hlavní smyčce select(). Tomu se
> >     předají filedescriptory, ze kterých chci číst, do kterých chci
> >     zapisovat
> >     a případný timeout pro nejbližší časovač.
> >
> >     U GPIO se otevře soubor  .../value a jeho descriptor se přidá do
> >     readfds
> >     selectu. V obsluze pak:
> >     lseek(gpio->value_fd, 0, SEEK_SET);
> >     read(gpio->value_fd, buf, 1);
> >
> >     L.
> >
> >
> >     Dne 17.09.2021 v 13:15 Michal Grunt napsal(a):
> >      > Tak usleep(1) moc nepomůže. Vyžere to 100% CPU. Když zadám
> _______________________________________________
> HW-list mailing list  -  sponsored by www.HW.cz
> Hw-list na list.hw.cz
> http://list.hw.cz/mailman/listinfo/hw-list
>
------------- další část ---------------
HTML příloha byla odstraněna...
URL: <http://list.hw.cz/pipermail/hw-list/attachments/20210919/e6ee725a/attachment.html>


Další informace o konferenci Hw-list