linux ajastin

prorammer

olen tehnyt c :lla linuxissa serveriprosessin, joka on jatkuvasti käynnissä ja kuuntelee sokettia. Haluaisin, että prosessini ottaa mysql tietokantaan yhteyden esim. joka
torstai kello 14.00 ja tallentaa sinne tietoa. Noita ajastettuja tapahtumia pitäisi tehdä enemmänkin.

Kuinka tuo tiettynä ajanhetkenä tapahtuva toiminta olisi helpointa toteuttaa? Löytyykö jotain alarm() tapaista funktiota, johon voihin asettaa päivämäärän/kellonajan noiden sekunttien tapaan jotain alarm() ottaa vastaan?

6

546

    Vastaukset

    Anonyymi (Kirjaudu / Rekisteröidy)
    5000
    • *BSD

      Setitimer() on varmaan funktio, jota etsit. Tolla tosin ei voi päivämäärää laittaa suoraan mutta voit tehdä SIGALRM-käsittelijän, joka tarkastaa ajan yms.

      Toinen tapa, joka tuli mieleen on käyttää cronia lähettämään signaali (vaikka SIGUSR1 tolle prosessille kun aika menee umpeen).

      • prorammer

        >Toinen tapa, joka tuli mieleen on käyttää cronia >lähettämään signaali (vaikka SIGUSR1 tolle >prosessille kun aika menee umpeen).
        mitens tuon lähetys onnistuu komentoriviltä/skriptistä?


      • prorammer kirjoitti:

        >Toinen tapa, joka tuli mieleen on käyttää cronia >lähettämään signaali (vaikka SIGUSR1 tolle >prosessille kun aika menee umpeen).
        mitens tuon lähetys onnistuu komentoriviltä/skriptistä?

        Tietysti ohjelmalla kill. Esim. "kill -USR1 prosessin_pid". C/C :lla kikkaillessa voit käyttää systeemikutsua kill (katso "man 2 kill").


      • prorammer
        Mik26 kirjoitti:

        Tietysti ohjelmalla kill. Esim. "kill -USR1 prosessin_pid". C/C :lla kikkaillessa voit käyttää systeemikutsua kill (katso "man 2 kill").

        vielä jatkokysymys. prosessithan käynnistyy aina vaihtelevalla pidillä. miten saan tuon skriptin löytämään prosessin nimeltään xxx pidin?


      • *BSD
        prorammer kirjoitti:

        vielä jatkokysymys. prosessithan käynnistyy aina vaihtelevalla pidillä. miten saan tuon skriptin löytämään prosessin nimeltään xxx pidin?

        Se prosessi voi kirjoittaa sen PIDn vaikka levylle (esim. /var/run/xyz.pid) käynnistettäessä. Toinen tapa varmaan on käyttää pgreppiä (tai ps -ef | grep ..).


      • prorammer
        *BSD kirjoitti:

        Se prosessi voi kirjoittaa sen PIDn vaikka levylle (esim. /var/run/xyz.pid) käynnistettäessä. Toinen tapa varmaan on käyttää pgreppiä (tai ps -ef | grep ..).

        kiitoksia kaikille vastanneille.. nyt selviän eteenpäin.


    Ketjusta on poistettu 0 sääntöjenvastaista viestiä.

    Luetuimmat keskustelut

    1. Nurmossa kuoli 2 Lasta..

      Autokolarissa. Näin kertovat iltapäivälehdet juuri nyt. 22.11. Ja aina ennen Joulua näitä tulee. . .
      Seinäjoki
      138
      7785
    2. Joel Harkimo seuraa Martina Aitolehden jalanjälkiä!

      Oho, aikamoinen yllätys, että Joel Jolle Harkimo on lähtenyt Iholla-ohjelmaan. Tässähän hän seuraa mm. Martina Aitolehde
      Suomalaiset julkkikset
      38
      1985
    3. Kaksi lasta kuoli kolarissa Seinäjoella. Tutkitaan rikoksena

      Henkilöautossa matkustaneet kaksi lasta ovat kuolleet kolarissa Seinäjoella. Kolmas lapsi on vakasti loukkaantunut ja
      Maailman menoa
      25
      1930
    4. Miten meinasit

      Suhtautua minuun kun taas kohdataan?
      Ikävä
      91
      1643
    5. Miksi pankkitunnuksilla kaikkialle

      Miksi rahaliikenteen palveluiden tunnukset vaaditaan miltei kaikkeen yleiseen asiointiin Suomessa? Kenen etu on se, että
      Maailman menoa
      180
      1575
    6. Tunnekylmä olet

      En ole tyytyväinen käytökseesi et osannut kommunikoida. Se on huono piirre ihmisessä että ei osaa katua aiheuttamaansa p
      Ikävä
      107
      1030
    7. Oletko miten

      Valmis läheisyyteen?
      Ikävä
      49
      930
    8. Taisit sä sit kuiteski

      Vihjata hieman ettei se kaikki ollutkaan totta ❤️ mutta silti sanoit kyllä vielä uudelleen sen myöhemmin 😔 ei tässä oik
      Ikävä
      4
      919
    9. Odotathan nainen jälleenkohtaamistamme

      Tiedät tunteeni, ne eivät sammu johtuen ihanuudestasi. Haluan tuntea ihanan kehosi kosketuksen ja sen aikaansaamaan väri
      Ikävä
      28
      830
    10. Muistatko hänen

      Tuoksunsa? Saako se sinut syttymään? ❤️‍🔥
      Ikävä
      34
      812
    Aihe