heise online · c't · iX · Technology Review · Telepolis · mobil · Security · Netze · heise open · heise resale · Autos · c't-TV · Jobs · Kiosk
Zum Inhalt
c't

c't Projekte - c't-Bot und c't-Sim - Mailinglisten

c't-Bot und c't-Sim


[Voriger (Datum)] [Nächster (Datum)] [Voriger (Thread)] [Nächster (Thread)]
[Nach Datum][Nach Thread]

Re: [ct-bot] neues Verhalten bot_cancel_behaviour

Absender: Timo Sandmann
Datum: Mo, 22.10.2007 13:52:01
In-reply-to: <8354DF7B-C075-4E30-B922-33DE896B98AC@xxxxxxxxxxxxxxx>
References: <812F86EC9E1A96489D5E83C2AB7D68860157848D@xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx> <8354DF7B-C075-4E30-B922-33DE896B98AC@xxxxxxxxxxxxxxx>



Am 22.10.2007 um 11:24 schrieb Timo Sandmann:
Also irgendwas ist da aber noch merkwürdig (oder ich versteh's falsch):
Wenn Verhalten 1 das Verhalten 2 aufruft, ist 2->caller == 1.
Wenn Verhalten 1 außerdem cancel_behaviour(2) aufruft, ist cancel- >caller == 1. Trifft nun die Abbruchbedingung zu, ruft cancel deactivateCalled... (2) auf, was alle Verhalten deaktiviert, die 2 gestartet hat und deren Caller werden jeweils gelöscht. Dann wird deactivateBehaviour(2) aufgerufen (bevor bot_behave() in die nächste Runde geht), was 2 selbst deaktiviert und den Caller von 2 löscht. Abschließend wird return_from_behaviour(cancel) aufgerufen, was cancel deaktiviert und den cancel->caller aktiviert. cancel->caller == 1, also müsste doch wieder 1 gestartet werden.

Aber wo ist jetzt der Denkfehler? Ich seh grad kein Problem mehr :-/

http://www.heise.de/ct/projekte/machmit/ctbot/ticket/150

Gruß Timo





Copyright © 2007 Heise Zeitschriften Verlag Kritik, Anregungen bitte an c't-WWW Datenschutzhinweis   Impressum