Hallo,
ich habe mal wieder ein Anliegen zum Atom „Operator“.
Folgender Sachverhalt:
1. Simulationsdurchlauf:
In der Source weise ich dem Attribut Inter-arrival Time „hr(3)“ zu.
Der Simulationsdurchlauf funktioniert.
2. Simulationsdurchlauf
In der Source weise ich dem Attribut Inter-arrival Time „hr(1)“ zu.
Ansonsten nehme ich keine Veränderungen an dem Simulationsmodell vor!!!
Der Simulationsdurchlauf funktioniert nicht!
In dem Simulationsmodell werden 2 Operators aus verschiedenen Teams zu einem Server gerufen und dort auch wieder freigegeben.
Wenn ich die Inter-arrival Time auf „hr(1)“ setze, dann wird ein Operator aber teilweise nicht freigegeben.
Oder ich bekomme folgende Fehlermeldung:
1 Time: 210129.073340644 Atom: Bediener1 (ID=180), OnMessage>No atom currently selected: In(,)
2 Time: 210129.073340644 Atom: Bediener1 (ID=180), OnEvent>No atom currently selected: In(,)
….
In einigen Zeitabschnitten dieses Simulationsdurchlaufes tritt auch kein Fehlverhalten bzw. keine Fehlermeldung auf.
3. Simulationsdurchlauf:
In der Source weise ich dem Attribut Inter-arrival Time wieder „hr(3)“ zu.
Der Simulationsdurchlauf funktioniert wieder.
Wie ist dieses Systemverhalten zu erklären?
Anmerkungen:
- Ich arbeite mit der Version 7.1 (Build 646).
- 1. Event von jedem Team abgeändert (damit die Anwendung von
mehreren Teams funktioniert):
case(
eventcode,
{* 1: Set calling atom on hold *}
Do(
Status( i) := 30,
if (label([Merker] ,i) = 0,
Do (DelayEvents( 1000000000000, i),
setlabel([Merker], 1, i)))
),
{* 2: Look for an operator *}
- Aufgrund der Änderung des 1. Events von jedem Team ist folgender
Quellcode für das Rufen eines Operators hinterlegt:
Do (setlabel([Merker], 0, p(2)),
CallOperators(AtomByName(p(3), Model), 1,2)
)
Ich hoffe, dass mir wieder jemand weiterhelfen kann.
Ich sage Dankeschön im Voraus!
Katjes, verwirrt und planlos
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP