Forum pour réunir les administrateurs de serveur L2
 
AccueilAccueil  FAQFAQ  RechercherRechercher  S'enregistrerS'enregistrer  MembresMembres  GroupesGroupes  Connexion  

Partagez | 
 

 Global Task

Voir le sujet précédent Voir le sujet suivant Aller en bas 
AuteurMessage
darksimonus



Nombre de messages : 732
Date d'inscription : 12/09/2007

MessageSujet: Global Task   Jeu 22 Avr 2010, 15:21

Bonjour à tous,

J aurais aimé savoir si j'étais le seul à avoir des probleme de global task cela est un probleme qui a toujours exister pour ma part sur L2Jfree.
Les global Task lancant des pythons (genre pour autoevent) marchent en moyen 1 jours sur 2.
je met bien 1 dans le premier paramètre puis l'heure dans le second paramètres

Quelqu'un connait ce probleme
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://www.l2sacrifice.fr/
Psychokiller1888



Nombre de messages : 114
Age : 32
Localisation : Suisse
Date d'inscription : 24/02/2008

MessageSujet: Re: Global Task   Jeu 29 Avr 2010, 13:36

Le soucis est simple:

Tu lances via une entrées dans global_tasks, une tâche de type TYPE_GLOBAL_TASK. Jusque là tout est normal. Mettons que le jython que tu appelles lance un tvt par exemple, simple à faire. Le premier lancement du serveur la colone "last_activation" ne contient rien, un timer est lancé pour l'heure que tu as renseigné en colone param2. A l'heure indiquée, ton script se lance. Et c'est là que ce trouve le soucis. Le script prend du temps pour se dérouler du début à la fin, comme mes tvt qui dure 20 minutes... La colone "last_activation" sera mise à jour avec "heure de start + temps execution du script". Donc mettons que tu lances un event de 15 minutes à 16h, last_activation contiendra 16h+15min. Vu que tu le lances tous les jours, le lendemain au load des tâches, il doit lancé à 16h ton tvt, mais avec un interval de 24h par rapport au dernier lancement. Tu peux pas, parce que l'heure mini pour lancer est à 16h15 alors que tu veux lancer à 16h... Donc ce jourtombe à l'eau, par contre le lendemain ce sera ok à nouveau puisque le dernier lancement du script était 47h45 plus tôt donc plus grand que 24h.

A moin que ça ai changé depuis, mais y'a un moment le soucis était là.

Sinon c'est un soucis de milisecondes Smile

Pour confirmer, ce soir si une de tes tâches jython se lance, donne moi l'heure à laquelle elle doit se lancer d'après la table global_tasks et donne moi le last_activation qui s'est inscris une fois l'event terminé stp.


Si ce que je dis c'est pas n'importe quoi, le coup du temps d'execution du script, un fix possible pourrais être:

Code:

### Eclipse Workspace Patch 1.0
#P Semper Fidelis
Index: trunk/l2jfree-core/src/main/java/com/l2jfree/gameserver/taskmanager/tasks/TaskManager.java
===================================================================
--- trunk/l2jfree-core/src/main/java/com/l2jfree/gameserver/taskmanager/tasks/TaskManager.java   (revision 2043)
+++ trunk/l2jfree-core/src/main/java/com/l2jfree/gameserver/taskmanager/tasks/TaskManager.java   (working copy)
@@ -140,15 +140,6 @@
       

       public void run()

       {

-         try

-         {

-            _task.onTimeElapsed(this, getParams());

-         }

-         catch (Exception e)

-         {

-            _log.warn(this, e);

-         }

-         

          Connection con = null;

          try

          {

@@ -168,6 +159,15 @@
          {

             L2DatabaseFactory.close(con);

          }

+

+         try

+         {

+            _task.onTimeElapsed(this, getParams());

+         }

+         catch (Exception e)

+         {

+            _log.warn(this, e);

+         }

          

          if (_type == TYPE_SHEDULED || _type == TYPE_TIME)

             stopTask();



Maintenant pour corriger réellement il me faudrait les données.



EDIT:
Mon script tvt devait se lancer à 16:00:00 avant hier. Il s'est lancé, les joueurs l'ont joué. Mais si je convertis last_activation, il me donne:
Tue, 27 Apr 2010 14:30:31 GMT

Donc last_activation s'est inscrit à la fin du tvt Smile C'est à dire 16h + les 10 minutes d'enregistrement + les 20 minutes de jeu + les teleports back et le nettoyage = 16h30:31 secondes. Le patch devrait corriger le soucis, puisqu'il inscris d'abord le last_activation puis execute la tâche.

Merci de me confirmer si ça résoud le soucis, et dans le cas d'une résolution, je corrigerai les sources l2jfree directement.
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Psychokiller1888



Nombre de messages : 114
Age : 32
Localisation : Suisse
Date d'inscription : 24/02/2008

MessageSujet: Re: Global Task   Ven 07 Mai 2010, 10:32

De rien hein! C'était avec plaisir! Surtout merci de m'avoir dis si oui ou non ça foctionne Smile En gros, les prochaines questions, tu peux aller te brosser! A bon entendeur!
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
darksimonus



Nombre de messages : 732
Date d'inscription : 12/09/2007

MessageSujet: Re: Global Task   Lun 10 Mai 2010, 10:37

j'étais en vacances et je viens juste de retrouvé le post

merci à toi, désolé du retard

j'en parle aux personnes s occupant du java chez moi et je ferais un retour
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://www.l2sacrifice.fr/
Psychokiller1888



Nombre de messages : 114
Age : 32
Localisation : Suisse
Date d'inscription : 24/02/2008

MessageSujet: Re: Global Task   Lun 10 Mai 2010, 11:14

L'entier a été revisité par NBali et moi et completement debug puis commit sur l2jfree, update sur 8370
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
darksimonus



Nombre de messages : 732
Date d'inscription : 12/09/2007

MessageSujet: Re: Global Task   Mar 11 Mai 2010, 09:51

super mille merci faut maintenant qu'on remonte nos 600rev de retard Smile

encore merci
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://www.l2sacrifice.fr/
Contenu sponsorisé




MessageSujet: Re: Global Task   Aujourd'hui à 17:40

Revenir en haut Aller en bas
 
Global Task
Voir le sujet précédent Voir le sujet suivant Revenir en haut 
Page 1 sur 1
 Sujets similaires
-
» Global Hotkey
» Modifier Global Game Settings pendant une partie
» retirer les titres : message populaire, message global et etc...
» cherche une dreamsnene CIA ou Task Force 141
» envoyer message global

Permission de ce forum:Vous ne pouvez pas répondre aux sujets dans ce forum
L2J-FR :: Général :: Aides et Conseils-
Sauter vers: