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?
linux ajastin
6
545
Vastaukset
- *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
Nurmossa kuoli 2 Lasta..
Autokolarissa. Näin kertovat iltapäivälehdet juuri nyt. 22.11. Ja aina ennen Joulua näitä tulee. . .1377689Joel 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 Aitolehde381925Kaksi lasta kuoli kolarissa Seinäjoella. Tutkitaan rikoksena
Henkilöautossa matkustaneet kaksi lasta ovat kuolleet kolarissa Seinäjoella. Kolmas lapsi on vakasti loukkaantunut ja251880- 911623
Miksi pankkitunnuksilla kaikkialle
Miksi rahaliikenteen palveluiden tunnukset vaaditaan miltei kaikkeen yleiseen asiointiin Suomessa? Kenen etu on se, että1801555Tunnekylmä olet
En ole tyytyväinen käytökseesi et osannut kommunikoida. Se on huono piirre ihmisessä että ei osaa katua aiheuttamaansa p104988- 49920
Taisit sä sit kuiteski
Vihjata hieman ettei se kaikki ollutkaan totta ❤️ mutta silti sanoit kyllä vielä uudelleen sen myöhemmin 😔 ei tässä oik4839Odotathan nainen jälleenkohtaamistamme
Tiedät tunteeni, ne eivät sammu johtuen ihanuudestasi. Haluan tuntea ihanan kehosi kosketuksen ja sen aikaansaamaan väri28820- 33783