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.016 seconds, 12 queries executed ]

Informacje debugowania

Time (s) Query
0.00032 SET CHARSET latin2
0.00009 SET NAMES latin2
0.00331 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.220.76.120' WHERE u.id=1
0.00098 UPDATE punbb_online SET logged=1716203660 WHERE ident='18.220.76.120'
0.00070 SELECT * FROM punbb_online WHERE logged<1716203360
0.00099 DELETE FROM punbb_online WHERE ident='54.36.148.113'
0.00080 SELECT topic_id FROM punbb_posts WHERE id=37950
0.00138 SELECT id FROM punbb_posts WHERE topic_id=4765 ORDER BY posted
0.00168 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.00007 SELECT search_for, replace_with FROM punbb_censoring
0.00151 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.00145 UPDATE punbb_topics SET num_views=num_views+1 WHERE id=4765
Total query time: 0.01328 s