logo
07.10.2020 22:15
1
Rozmyslam ze si spravim nejaku jednoduchu verziu togglu na meranie casu uloh. Kvazi jednoduchy casovac, nic zlozite. Ale mam pocit ze to je jednoduche len na prvy pohlad a su tam nejake technicke problemy, ktore dopredu nevidim.

Napada vas, ze co takyto casovaci projekt moze skryvat za problemy? Hlavne ma napada synchronizacia casu, priapdy kedy sa nevypne casovac ale zavriem zalozku a podobne veci.
07.10.2020 23:58
2
No restart / vypnutí počítače, zapomenutí časovače (čili sledování aktivity), posun času cílený (to neumí rozdýchat ani Toggl) pokud to může nastat, přechod přes půlnoc.
13.10.2020 00:17
3
rozmyslam ze by som nechal casovac len u klienta. cize sa spusti uloha, ta sa ulozi do localStorage a len sa kontinualne inkrementuje "stop" cas, takze ak uzivatel zabudne ulohu zastavit(zavrie okno) tak sa uchova posledny "stop" a dajme tomu ze by to bolo v 5 sekundovych intervaloch, tak vznikne len maximalne 5 sekundovy rozdiel naproti nezastavenej ulohe. ked uzivatel ulohu manualne zastavi tak az vtedy sa cela uloha odosle na server(a az po uspesnom odoslani za zmase z lokalneho uloziska) tymto by slo riesit aj casovy posun kedy medzi tymito intervalmi preskocia hodiny, tak to skript detekuje a vie pokracovat normalne dalej(cize ak robim kazdych 5 sekund zapis tak ocakavam ze dalsi zapis nebude mat timestamp viac nez teraz+5s. s nejakou toleranciou samozrejme).

aby sa zabezpecilo spravne proadie uloh, napriklad ked je uzivatel aktivny na viacerych zariadeniach, tak by sa kazdy klient/session periodicky synchronzoval so serverom a vedel tak zistit casovu odchilku a spravne zaznamenat cas na serveri pre odoslane ulohy od klientov.

samozrejme ak uzivatel ma dve otvorene okna prehliadaca tak neuvidi na oboch aktivu ulohu, iba na tom originalnom okne. ale to mi nepride ako nejaky realny problem.
13.10.2020 09:14
4
mysli na to, že třeba chrome u neaktivního tabu zpomaluje časovač a requesty, takže měření času tam občas dělá nesmysly. Tyhle měřící nástroje dříve získavaly přesný čas ze serveru a vlastní časovač moc nepoužívaly (dnes to jiné nebude). Pěkně to fungovalo s webscokety, dnes zase long polling nad http/2. Teď odolně vypadají webworkers.

Plugin v prohlížeči má obrovskou výhodu, běží pořád a má k dispozici svůj lokální storage, takže je pak jedno v jakém tabu běží, stačí řešit semafory nebo používat wal.
13.10.2020 09:59
5
toto bezi bez problemov(ziadne spomalenie):
Kód:
<html>
    <head><title></title></head>
    <body>
        <script>
            let t = document.getElementsByTagName("title").item(0);
            let i = 0;
            setInterval(function() {
                i++;
                t.text = i;
            }, 1000);
        </script>
    </body>
</html>
ani si nejak neviem predstavit preco by sa mal casovac spomalovat v neaktivnych taboch. chapem ak sa nejake data daju z ramky na disk napriklad ale spomalovat prostredie? to nedava moc zmysel.
13.10.2020 10:05
6
Smysl to dává a prohlížeče to dělají. Neaktivní taby utlumují kvůli výkonu. Třeba mi občas vypnou muziku, když neodkliknu, že chci poslouchat dál. U slabších strojů dělávalo už několik záložek v Chrome docela potíže.
13.10.2020 10:13
7
Původně odeslal Tomáš Maňhal
Smysl to dává a prohlížeče to dělají. Neaktivní taby utlumují kvůli výkonu. Třeba mi občas vypnou muziku, když neodkliknu, že chci poslouchat dál. U slabších strojů dělávalo už několik záložek v Chrome docela potíže.
ak hovoris o youtube tak to robi prave youtube, nie prehliadac.

idem teraz prec tak to necham bezat v pripnutej zalozke so stopkami na mobile tak uvidim ci tam bude odchylka ked sa vratim...ale po 5 minutach v pripnutej zalozke bez zmeny.

--
ono prakticky to je aj jedno. ja nemusim pocitat cez interval, len pouzit interval na ziskanie timestampu a uchovavat ten, co aj planujem kedze tak ci onak potrebujem rpesne cas zaciatku a konca ulohy, nie len jej dlzku, tu si spocitam prave z rozdielu casovych znaciek.