Add IScriptInstance.EventsProcessed stat so that we can record this information and display in "show scripts" for debug purposes
parent
6d03a5d01b
commit
c2bdb36c11
|
@ -114,6 +114,11 @@ namespace OpenSim.Region.ScriptEngine.Interfaces
|
|||
UUID AssetID { get; }
|
||||
Queue EventQueue { get; }
|
||||
|
||||
/// <summary>
|
||||
/// Number of events processed by this script instance.
|
||||
/// </summary>
|
||||
long EventsProcessed { get; }
|
||||
|
||||
void ClearQueue();
|
||||
int StartParam { get; set; }
|
||||
|
||||
|
|
|
@ -173,6 +173,8 @@ namespace OpenSim.Region.ScriptEngine.Shared.Instance
|
|||
|
||||
public Queue EventQueue { get; private set; }
|
||||
|
||||
public long EventsProcessed { get; private set; }
|
||||
|
||||
public int StartParam { get; set; }
|
||||
|
||||
public TaskInventoryItem ScriptTask { get; private set; }
|
||||
|
@ -808,6 +810,8 @@ namespace OpenSim.Region.ScriptEngine.Shared.Instance
|
|||
// script engine to run the next event.
|
||||
lock (EventQueue)
|
||||
{
|
||||
EventsProcessed++;
|
||||
|
||||
if (EventQueue.Count > 0 && Running && !ShuttingDown)
|
||||
{
|
||||
m_CurrentWorkItem = Engine.QueueEventHandler(this);
|
||||
|
|
|
@ -512,6 +512,7 @@ namespace OpenSim.Region.ScriptEngine.XEngine
|
|||
lock (eq)
|
||||
sb.AppendFormat("Queued events : {0}\n", eq.Count);
|
||||
|
||||
sb.AppendFormat("Processed events : {0}\n", instance.EventsProcessed);
|
||||
sb.AppendFormat("Item UUID : {0}\n", instance.ItemID);
|
||||
sb.AppendFormat("Containing part name: {0}\n", instance.PrimName);
|
||||
sb.AppendFormat("Containing part UUID: {0}\n", instance.ObjectID);
|
||||
|
|
Loading…
Reference in New Issue