Dear MASON team,
I have a number of agents being stepped by ParallelSeqence facility.
For most of the time it runs smoothly. Nevertheless, I got into a
minor problem when trying to query the schedule for time: any
reference to state.schedule.time() or getSteps() causes a deadlock. I
have tried putting it as a synchronized call with locking on schedule
and simulation, I tried adding a synchronized function to SimState
that would return me that information, always with the same result.
Is it possible to access schedule when agent is stepped of the
ParallelSequence at all without causing deadlocks? Or is
ParallelSequence locking the schedule?
Above mentioned issue is more of theoretical significance for me: as I
need just coarse approximation of the number of steps from schedule, I
update agents with this information just before the ParallelSequence
is stepped.and avoid querying the schedule. I would love to know the
answer for potential future developments though.