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í
×
    dnes 14:22 | Bezpečnostní upozornění

    V přihlašovací obrazovce LightDM KDE (lightdm-kde-greeter) byla nalezena a již opravena eskalace práv (CVE-2025-62876). Detaily v příspěvku na blogu SUSE Security.

    Ladislav Hagara | Komentářů: 3
    dnes 13:22 | Nová verze

    Byla vydána nová verze 7.2 živé linuxové distribuce Tails (The Amnesic Incognito Live System), jež klade důraz na ochranu soukromí uživatelů a anonymitu. Tor Browser byl povýšen na verzi 15.0.1. Další novinky v příslušném seznamu.

    Ladislav Hagara | Komentářů: 0
    dnes 10:33 | IT novinky

    Česká národní banka (ČNB) nakoupila digitální aktiva založená na blockchainu za milion dolarů (20,9 milionu korun). Na vytvořeném testovacím portfoliu, jehož součástí jsou bitcoin, stablecoiny navázané na dolar a tokenizované depozitum, chce získat praktickou zkušenost s držením digitálních aktiv. Portfolio nebude součástí devizových rezerv, uvedla dnes ČNB v tiskové zprávě.

    Ladislav Hagara | Komentářů: 26
    dnes 03:22 | IT novinky

    Apple představil iPhone Pocket pro stylové přenášení iPhonu. iPhone Pocket vzešel ze spolupráce značky ISSEY MIYAKE a Applu a jeho tělo tvoří jednolitý 3D úplet, který uschová všechny modely iPhonu. iPhone Pocket s krátkým popruhem se prodává za 149,95 dolarů (USA) a s dlouhým popruhem za 229,95 dolarů (USA).

    Ladislav Hagara | Komentářů: 12
    dnes 02:33 | Nová verze

    Byla vydána nová stabilní verze 7.7 webového prohlížeče Vivaldi (Wikipedie). Postavena je na Chromiu 142. Přehled novinek i s náhledy v příspěvku na blogu.

    Ladislav Hagara | Komentářů: 0
    včera 22:11 | Nová verze

    Společnost Epic Games vydala verzi 5.7 svého proprietárního multiplatformního herního enginu Unreal Engine (Wikipedie). Podrobný přehled novinek v poznámkách k vydání.

    Ladislav Hagara | Komentářů: 2
    včera 16:22 | Bezpečnostní upozornění

    Intel vydal 30 upozornění na bezpečnostní chyby ve svých produktech. Současně vydal verzi 20251111 mikrokódů pro své procesory.

    Ladislav Hagara | Komentářů: 0
    včera 15:33 | Nová verze

    Byla vydána říjnová aktualizace aneb nová verze 1.106 editoru zdrojových kódů Visual Studio Code (Wikipedie). Přehled novinek i s náhledy a videi v poznámkách k vydání. Ve verzi 1.106 vyjde také VSCodium, tj. komunitní sestavení Visual Studia Code bez telemetrie a licenčních podmínek Microsoftu.

    Ladislav Hagara | Komentářů: 1
    včera 12:11 | Komunita

    Canonical pro své zákazníky, předplatitele Ubuntu Pro, prodloužil podporu Ubuntu LTS z 12 let na 15 let (Legacy add-on). Týká se verzí od 14.04 (Trusty Tahr).

    Ladislav Hagara | Komentářů: 2
    včera 05:11 | Nová verze

    Homebrew (Wikipedie), správce balíčků pro macOS a od verze 2.0.0 také pro Linux, byl vydán ve verzi 5.0.0. Nově je oficiálně podporován Linux ARM64/AArch64. Na stránce Homebrew Formulae lze procházet seznamem balíčků. K dispozici jsou také různé statistiky.

    Ladislav Hagara | Komentářů: 6
    Jaké řešení používáte k vývoji / práci?
     (35%)
     (46%)
     (18%)
     (18%)
     (23%)
     (15%)
     (23%)
     (15%)
     (16%)
    Celkem 351 hlasů
     Komentářů: 16, poslední 12.11. 18:21
    Rozcestník

    Dotaz: Pravidelná kontrola času a akce v daný čas v PERL

    19.9.2009 21:32 saky | skóre: 1
    Pravidelná kontrola času a akce v daný čas v PERL
    Přečteno: 346×

     Zdravím všechny.

    Mám tady další, pro mě dosti oříšek.

    Potřebuji v programu vykonat určitou akci vždy v daný čas. Potíž je, že se akce má opakovat každou celou hodinu.

    Nyní mám použito nešťastné řešení, navázané na jinou akci, něco takového:

     

      my %dttime = (); 

      my ($sec,$min,$hour,$mday,$mon,$year,$wday,$yday,$isdst) = localtime(time); 

      $dttime{year } = sprintf "%04d",($year + 1900); 

      $dttime{mon } = sprintf "%02d",($mon + 1); 

      $dttime{mday } = sprintf "%02d",$mday; 

      $dttime{wday } = sprintf "%02d",$wday + 1; 

      $dttime{yday } = sprintf "%02d",$yday; 

      $dttime{hour } = sprintf "%02d",$hour; 

      $dttime{min } = sprintf "%02d",$min; 

      $dttime{sec } = sprintf "%02d",$sec; 

      $dttime{isdst} = $isdst;

        if ($dttime{min} eq '00') {

      print  ":367: Je přesně $dttime{hour}:$dttime{min} hodin");

      }

    To celé je v sub on_public , tedy v reakcích na něco jiného a jestliže není zrovna po dobu trvání minuty 00 žádná akce požadována, výpis neproběhne.

    Nyní co potřebuji...

    Potřebuji, aby mi aplikace každou minutu kontrolovala aktuální čas a v celou hodinu vypsala přesný čas. Návaznost na akce v předchozím není nutná, snad ani žádoucí :-). Pokud by přesto musel výpis času zůstat navázán na jiné akce, je třeba ošetřit, aby se vypsal pouze jednou v každou celou hodinu, nyní se vypisuje u každé akce vždy po dobu trvání 00 minut .-) Moc díky všem :-)

     


    Řešení dotazu:


    Odpovědi

    20.9.2009 03:48 Petr Šobáň | skóre: 80 | blog: soban | Olomouc
    Rozbalit Rozbalit vše Re: Pravidelná kontrola času a akce v daný čas v PERL
    No a proč si nepřidáš záznam do cronu ? A tam zadáš že každou hodinu se má spustit program XYZ, a to že je to perl je mu jedno, napsané to může být v čemkoliv co máš na PC.
    20.9.2009 08:44 pht | skóre: 48 | blog: pht
    Rozbalit Rozbalit vše Re: Pravidelná kontrola času a akce v daný čas v PERL
    podle té 367 ... řekl bych že to je zas nějakej chat bot, kterej běží furt a pravděpodobně ta akce se má provést v tom běžícím programu (tj. ne spouštět nový)
    In Ada the typical infinite loop would normally be terminated by detonation.
    20.9.2009 13:09 saky | skóre: 1
    Rozbalit Rozbalit vše Re: Pravidelná kontrola času a akce v daný čas v PERL

     Přesně tak, potřebuji v celou hodinu provést pouze výpis na obrazovku, asi jsem to špatně popsal :-)

    20.9.2009 13:11 saky | skóre: 1
    Rozbalit Rozbalit vše Re: Pravidelná kontrola času a akce v daný čas v PERL

     Viz níže, nejde mi o spuštění aplikace, ale o vykonání příkazu v 00. :o)

    20.9.2009 13:46 pht | skóre: 48 | blog: pht
    Rozbalit Rozbalit vše Re: Pravidelná kontrola času a akce v daný čas v PERL
    Jelikož máte očividně celou aplikaci postavenou na událostech, tak bych nejprve řešil, jestli modul který používáte umí vyvolat časovou událost...
    In Ada the typical infinite loop would normally be terminated by detonation.
    21.9.2009 14:15 Ash | skóre: 53
    Rozbalit Rozbalit vše Re: Pravidelná kontrola času a akce v daný čas v PERL
    Já bych tomu běžícímu procesu z cronu poslal nějaký signál. Dělat kvůli tomuto vlastní vlákno nebo tak něco, no nevím.
    Řešení 1× (saky (tazatel))
    21.9.2009 14:34 happy barney | skóre: 34 | blog: dont_worry_be_happy
    Rozbalit Rozbalit vše Re: Pravidelná kontrola času a akce v daný čas v PERL
    udržuj si zoznam eventov a časov ich vykonania, niečo ako:
    @list = (
     [ time + 900, \&o_15_minut ],
     [ time + 3600, \&o_hodinu ],
    );
    
    ak používaš nejakú slučku s prerušením (napr poll), tak použi verziu s timeoutom (ten zabezpečí pravidelné prerušenie) a potom spusti všetky záznamy zo zoznamu, ktorý čas spustenia je menší alebo rovný ako aktuálny čas. Timeout použiť dynamický, rozdiel medzi aktuálnym časom a minimom zo zoznamu.

    ak nie, tak skús alarm

    pre výpočet času nasledujúcej udalosti skús Schedule::Cron::Events

    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.