Nie jesteś zalogowany.
Jeśli nie posiadasz konta, zarejestruj je już teraz! Pozwoli Ci ono w pełni korzystać z naszego serwisu. Spamerom dziękujemy!

Ogłoszenie

Prosimy o pomoc dla małej Julki — przekaż 1% podatku na Fundacji Dzieciom zdazyć z Pomocą.
Więcej informacji na dug.net.pl/pomagamy/.

#1  2006-08-04 14:16:29

  Picard - Użytkownik

Picard
Użytkownik
Zarejestrowany: 2006-05-07

Perl - jak wywolac funkcje co jakis czas

Witam!
napisalem maly skrypt w perlu i szukam teraz jakiegos rozwiazania aby w moim skrypcie pewna akcja (niech to bedzie wywolanie procedury) wykonywala sie co jakis blizej nieokreslony czas (moze byc losowy). czy ma ktos jakis pomysl za pomoca jakich funkcji moge to zrealizowac??
z gory dzieki za pomoc.

Offline

 

#2  2006-08-04 22:21:43

  KARQL - Członek DUG

KARQL
Członek DUG
Zarejestrowany: 2006-03-06

Re: Perl - jak wywolac funkcje co jakis czas

Malo szczegolow podales.
Nie napisales czy w czasie oczekiwania na wykonanie procedury skrypt ma robic cos jeszcze. Jesli nie mozesz to zrobic przy uzyciu np. sleep i rand. Jesli w tym czasie ma sie cos innego wykonwyac to juz tak nie zrobisz. Gdy masz przykladowo cos takiego:

Kod:

while (1) {
#jakis kod
proc(); #subrutyna co ma byc wykonwyana co jakis czas
}

mozesz do tego wykorzystac np. time
zapisujesz do zmiennej ostatni czas jaki byl, pozniej porownujesz go z tym co jest teraz i jesli jest wiekszy niz tam np. iles sek no to wykonujesz subtryne i uaktualniasz zmienna z czasem. Mozesz zamiast statycznej liczby sekund tez dac rand czy cos. Wszystko zalezy od Twojej pomyslowosci:)


[img]http://img254.imageshack.us/img254/1225/gentoobar1rs9.png[/img]

Offline

 

Stopka forum

Powered by PunBB
© Copyright 2002–2005 Rickard Andersson
Możesz wyłączyć AdBlock — tu nie ma reklam ;-)

[ Generated in 0.009 seconds, 9 queries executed ]

Informacje debugowania

Time (s) Query
0.00014 SET CHARSET latin2
0.00007 SET NAMES latin2
0.00089 SELECT u.*, g.*, o.logged FROM punbb_users AS u INNER JOIN punbb_groups AS g ON u.group_id=g.g_id LEFT JOIN punbb_online AS o ON o.ident='18.189.170.206' WHERE u.id=1
0.00109 UPDATE punbb_online SET logged=1716193411 WHERE ident='18.189.170.206'
0.00045 SELECT * FROM punbb_online WHERE logged<1716193111
0.00159 SELECT t.subject, t.closed, t.num_replies, t.sticky, f.id AS forum_id, f.forum_name, f.moderators, fp.post_replies, 0 FROM punbb_topics AS t INNER JOIN punbb_forums AS f ON f.id=t.forum_id LEFT JOIN punbb_forum_perms AS fp ON (fp.forum_id=f.id AND fp.group_id=3) WHERE (fp.read_forum IS NULL OR fp.read_forum=1) AND t.id=4765 AND t.moved_to IS NULL
0.00012 SELECT search_for, replace_with FROM punbb_censoring
0.00165 SELECT u.email, u.title, u.url, u.location, u.use_avatar, u.signature, u.email_setting, u.num_posts, u.registered, u.admin_note, p.id, p.poster AS username, p.poster_id, p.poster_ip, p.poster_email, p.message, p.hide_smilies, p.posted, p.edited, p.edited_by, g.g_id, g.g_user_title, o.user_id AS is_online FROM punbb_posts AS p INNER JOIN punbb_users AS u ON u.id=p.poster_id INNER JOIN punbb_groups AS g ON g.g_id=u.group_id LEFT JOIN punbb_online AS o ON (o.user_id=u.id AND o.user_id!=1 AND o.idle=0) WHERE p.topic_id=4765 ORDER BY p.id LIMIT 0,25
0.00092 UPDATE punbb_topics SET num_views=num_views+1 WHERE id=4765
Total query time: 0.00692 s