Suspend stacks look this in the log:
Spoiler
[03/30/2012 - 04:24:01PM] Suspended stack count is over our warning threshold, dumping stacks:[03/30/2012 - 04:24:01PM] VM is freezing...[03/30/2012 - 04:24:01PM] VM is frozen[03/30/2012 - 04:24:01PM] Dumping stack 1642340:[03/30/2012 - 04:24:01PM] Frame count: 0 (Page count: 0)[03/30/2012 - 04:24:01PM] State: Waiting on other stack for call (Freeze state: Freezing)[03/30/2012 - 04:24:01PM] Type: Normal[03/30/2012 - 04:24:01PM] Return register: None[03/30/2012 - 04:24:01PM] Has stack callback: No[03/30/2012 - 04:24:01PM] Stack trace:[03/30/2012 - 04:24:01PM] [And it goes on for quite a bit.(32) on (00000000)].kuAENPCAliasS.OnMagicEffectApply() - (requested call)[03/30/2012 - 04:24:01PM] [param 0]: [ObjectReference < (000528A8)>][03/30/2012 - 04:24:01PM] [param 1]: [MagicEffect < (00024315)>][03/30/2012 - 04:24:01PM] Dumping stack 1642341:[03/30/2012 - 04:24:01PM] Frame count: 0 (Page count: 0)[03/30/2012 - 04:24:01PM] State: Waiting on other stack for call (Freeze state: Freezing)[03/30/2012 - 04:24:01PM] Type: Normal[03/30/2012 - 04:24:01PM] Return register: None[03/30/2012 - 04:24:01PM] Has stack callback: No[03/30/2012 - 04:24:01PM] Stack trace:[03/30/2012 - 04:24:01PM] [ (33) on (00000000)].kuAENPCAliasS.OnMagicEffectApply() - (requested call)[03/30/2012 - 04:24:01PM] [param 0]: [ObjectReference < (000528D0)>][03/30/2012 - 04:24:01PM] [param 1]: [MagicEffect < (00024315)>][03/30/2012 - 04:24:01PM] Dumping stack 1678591:[03/30/2012 - 04:24:01PM] Frame count: 0 (Page count: 0)[03/30/2012 - 04:24:01PM] State: Waiting on other stack for call (Freeze state: Freezing)[03/30/2012 - 04:24:01PM] Type: Normal[03/30/2012 - 04:24:01PM] Return register: None[03/30/2012 - 04:24:01PM] Has stack callback: No[03/30/2012 - 04:24:01PM] Stack trace:[03/30/2012 - 04:24:01PM] [ (32) on (00000000)].kuAENPCAliasS.OnMagicEffectApply() - (requested call)[03/30/2012 - 04:24:01PM] [param 0]: [ObjectReference < (000528A8)>][03/30/2012 - 04:24:01PM] [param 1]: [MagicEffect < (00024315)>][03/30/2012 - 04:24:01PM] Dumping stack 1679901:[03/30/2012 - 04:24:01PM] Frame count: 0 (Page count: 0)[03/30/2012 - 04:24:01PM] State: Waiting on other stack for call (Freeze state: Freezing)[03/30/2012 - 04:24:01PM] Type: Normal[03/30/2012 - 04:24:01PM] Return register: None[03/30/2012 - 04:24:01PM] Has stack callback: No[03/30/2012 - 04:24:01PM] Stack trace:[03/30/2012 - 04:24:01PM] [ (33) on (00000000)].kuAENPCAliasS.OnMagicEffectApply() - (requested call)[03/30/2012 - 04:24:01PM] [param 0]: [ObjectReference < (000528D0)>][03/30/2012 - 04:24:01PM] [param 1]: [MagicEffect < (00024315)>][03/30/2012 - 04:24:01PM] Dumping stack 1643830:[03/30/2012 - 04:24:01PM] Frame count: 0 (Page count: 0)[03/30/2012 - 04:24:01PM] State: Waiting on other stack for call (Freeze state: Freezing)[03/30/2012 - 04:24:01PM] Type: Normal[03/30/2012 - 04:24:01PM] Return register: None[03/30/2012 - 04:24:01PM] Has stack callback: No[03/30/2012 - 04:24:01PM] Stack trace:[03/30/2012 - 04:24:01PM] [ (34) on (00000000)].kuAENPCAliasS.OnMagicEffectApply() - (requested call)[03/30/2012 - 04:24:01PM] [param 0]: [ObjectReference < (00083318)>][03/30/2012 - 04:24:01PM] [param 1]: [MagicEffect < (00024315)>][03/30/2012 - 04:24:01PM] Dumping stack 1906024:[03/30/2012 - 04:24:01PM] Frame count: 0 (Page count: 0)[03/30/2012 - 04:24:01PM] State: Waiting on other stack for call (Freeze state: Freezing)[03/30/2012 - 04:24:01PM] Type: Normal[03/30/2012 - 04:24:01PM] Return register: None[03/30/2012 - 04:24:01PM] Has stack callback: No[03/30/2012 - 04:24:01PM] Stack trace:[03/30/2012 - 04:24:01PM] [ (47) on (00000000)].kuAENPCAliasS.OnMagicEffectApply() - (requested call)[03/30/2012 - 04:24:01PM] [param 0]: [ObjectReference < (0002A3A5)>][03/30/2012 - 04:24:01PM] [param 1]: [MagicEffect < (00024315)>][03/30/2012 - 04:24:01PM] Dumping stack 1647187:[03/30/2012 - 04:24:01PM] Frame count: 0 (Page count: 0)[03/30/2012 - 04:24:01PM] State: Waiting on other stack for call (Freeze state: Freezing)[03/30/2012 - 04:24:01PM] Type: Normal[03/30/2012 - 04:24:01PM] Return register: None[03/30/2012 - 04:24:01PM] Has stack callback: No[03/30/2012 - 04:24:01PM] Stack trace:[03/30/2012 - 04:24:01PM] [ (33) on (00000000)].kuAENPCAliasS.OnMagicEffectApply() - (requested call)[03/30/2012 - 04:24:01PM] [param 0]: [ObjectReference < (000528D0)>][03/30/2012 - 04:24:01PM] [param 1]: [MagicEffect < (00024315)>][03/30/2012 - 04:24:01PM] Dumping stack 1637190:[03/30/2012 - 04:24:01PM] Frame count: 0 (Page count: 0)[03/30/2012 - 04:24:01PM] State: Waiting on other stack for call (Freeze state: Freezing)[03/30/2012 - 04:24:01PM] Type: Normal[03/30/2012 - 04:24:01PM] Return register: None[03/30/2012 - 04:24:01PM] Has stack callback: No[03/30/2012 - 04:24:01PM] Stack trace:[03/30/2012 - 04:24:01PM] [ (33) on (00000000)].kuAENPCAliasS.OnMagicEffectApply() - (requested call)[03/30/2012 - 04:24:01PM] [param 0]: [ObjectReference < (000528D0)>][03/30/2012 - 04:24:01PM] [param 1]: [MagicEffect < (00024315)>][03/30/2012 - 04:24:01PM] Dumping stack 1637191:[03/30/2012 - 04:24:01PM] Frame count: 0 (Page count: 0)[03/30/2012 - 04:24:01PM] State: Waiting on other stack for call (Freeze state: Freezing)[03/30/2012 - 04:24:01PM] Type: Normal[03/30/2012 - 04:24:01PM] Return register: None[03/30/2012 - 04:24:01PM] Has stack callback: No[03/30/2012 - 04:24:01PM] Stack trace:[03/30/2012 - 04:24:01PM] [ (32) on (00000000)].kuAENPCAliasS.OnMagicEffectApply() - (requested call)[03/30/2012 - 04:24:01PM] [param 0]: [ObjectReference < (000528A8)>][03/30/2012 - 04:24:01PM] [param 1]: [MagicEffect < (00024315)>][03/30/2012 - 04:24:01PM] Dumping stack 1640054:[03/30/2012 - 04:24:01PM] Frame count: 0 (Page count: 0)[03/30/2012 - 04:24:01PM] State: Waiting on other stack for call (Freeze state: Freezing)[03/30/2012 - 04:24:01PM] Type: Normal[03/30/2012 - 04:24:01PM] Return register: None[03/30/2012 - 04:24:01PM] Has stack callback: No[03/30/2012 - 04:24:01PM] Stack trace:[03/30/2012 - 04:24:01PM] [ (33) on (00000000)].kuAENPCAliasS.OnMagicEffectApply() - (requested call)[03/30/2012 - 04:24:01PM] [param 0]: [ObjectReference < (000528D0)>][03/30/2012 - 04:24:01PM] [param 1]: [MagicEffect < (00024315)>][03/30/2012 - 04:24:01PM] Dumping stack 1640055:[03/30/2012 - 04:24:01PM] Frame count: 0 (Page count: 0)[03/30/2012 - 04:24:01PM] State: Waiting on other stack for call (Freeze state: Freezing)[03/30/2012 - 04:24:01PM] Type: Normal[03/30/2012 - 04:24:01PM] Return register: None[03/30/2012 - 04:24:01PM] Has stack callback: No[03/30/2012 - 04:24:01PM] Stack trace:[03/30/2012 - 04:24:01PM] [ (32) on (00000000)].kuAENPCAliasS.OnMagicEffectApply() - (requested call)[03/30/2012 - 04:24:01PM] [param 0]: [ObjectReference < (000528A8)>][03/30/2012 - 04:24:01PM] [param 1]: [MagicEffect < (00024315)>][03/30/2012 - 04:24:01PM] Dumping stack 1649602:[03/30/2012 - 04:24:01PM] Frame count: 0 (Page count: 0)[03/30/2012 - 04:24:01PM] State: Waiting on other stack for call (Freeze state: Freezing)[03/30/2012 - 04:24:01PM] Type: Normal[03/30/2012 - 04:24:01PM] Return register: None[03/30/2012 - 04:24:01PM] Has stack callback: No[03/30/2012 - 04:24:01PM] Stack trace:[03/30/2012 - 04:24:01PM] [ (32) on (00000000)].kuAENPCAliasS.OnMagicEffectApply() - (requested call)[03/30/2012 - 04:24:01PM] [param 0]: [ObjectReference < (000528A8)>][03/30/2012 - 04:24:01PM] [param 1]: [MagicEffect < (00024315)>][03/30/2012 - 04:24:01PM] Dumping stack 1649698:[03/30/2012 - 04:24:01PM] Frame count: 0 (Page count: 0)[03/30/2012 - 04:24:01PM] State: Waiting on other stack for call (Freeze state: Freezing)[03/30/2012 - 04:24:01PM] Type: Normal[03/30/2012 - 04:24:01PM] Return register: None[03/30/2012 - 04:24:01PM] Has stack callback: No[03/30/2012 - 04:24:01PM] Stack trace:[03/30/2012 - 04:24:01PM] [ (33) on (00000000)].kuAENPCAliasS.OnMagicEffectApply() - (requested call)[03/30/2012 - 04:24:01PM] [param 0]: [ObjectReference < (000528D0)>][03/30/2012 - 04:24:01PM] [param 1]: [MagicEffect < (00024315)>][03/30/2012 - 04:24:01PM] Dumping stack 2089195:[03/30/2012 - 04:24:01PM] Frame count: 4 (Page count: 4)[03/30/2012 - 04:24:01PM] State: Waiting on other stack for return (Freeze state: Freezing)[03/30/2012 - 04:24:01PM] Type: Normal[03/30/2012 - 04:24:01PM] Return register: [Form < (0010FDD4)>][03/30/2012 - 04:24:01PM] Has stack callback: No[03/30/2012 - 04:24:01PM] Stack trace:[03/30/2012 - 04:24:01PM] [ (0B004346)].FormList.GetAt() - " " Line ?[03/30/2012 - 04:24:01PM] IP: 0[03/30/2012 - 04:24:01PM] [param1]: 34[03/30/2012 - 04:24:01PM] [kuVTQ (0B000D62)].kuVTQS.OnActorHit() - "kuVTQS.psc" Line 237[03/30/2012 - 04:24:01PM] IP: 475 Instruction: 14 Line: 237[03/30/2012 - 04:24:01PM] [ActorRef]: [masterambushscript < (0004D1D3)>][03/30/2012 - 04:24:01PM] [akAggressor]: [ObjectReference < (00000014)>][03/30/2012 - 04:24:01PM] [akSource]: [SPELL < (00012FCD)>][03/30/2012 - 04:24:01PM] [akProjectile]: [PROJECTILE < (00012FCF)>][03/30/2012 - 04:24:01PM] [abPowerAttack]: False[03/30/2012 - 04:24:01PM] [abSneakAttack]: False[03/30/2012 - 04:24:01PM] [abBashAttack]: False[03/30/2012 - 04:24:01PM] [abHitBlocked]: False[03/30/2012 - 04:24:01PM] [::temp32]: "OnActorHit [masterambushscript < (0004D1D3)>]"[03/30/2012 - 04:24:01PM] [::nonevar]: None[03/30/2012 - 04:24:01PM] [::temp33]: [Actor < (00000014)>][03/30/2012 - 04:24:01PM] [::temp34]: True[03/30/2012 - 04:24:01PM] [::temp35]: 51[03/30/2012 - 04:24:01PM] [::temp36]: True[03/30/2012 - 04:24:01PM] [::temp37]: True[03/30/2012 - 04:24:01PM] [i]: 34[03/30/2012 - 04:24:01PM] [exitLoop]: False[03/30/2012 - 04:24:01PM] [::temp38]: [Form < (0001EA77)>][03/30/2012 - 04:24:01PM] [::temp39]: [MagicEffect < (0001EA77)>][03/30/2012 - 04:24:01PM] [mECalm]: [MagicEffect < (0001EA77)>][03/30/2012 - 04:24:01PM] [kuAEQ (02000801)].kuaeqs.OnActorHit() - "kuAEQS.psc" Line 369[03/30/2012 - 04:24:01PM] IP: 1110 Instruction: 32 Line: 369[03/30/2012 - 04:24:01PM] [ActorRef]: [masterambushscript < (0004D1D3)>][03/30/2012 - 04:24:01PM] [akAggressor]: [ObjectReference < (00000014)>][03/30/2012 - 04:24:01PM] [akSource]: [SPELL < (00012FCD)>][03/30/2012 - 04:24:01PM] [akProjectile]: [PROJECTILE < (00012FCF)>][03/30/2012 - 04:24:01PM] [abPowerAttack]: False[03/30/2012 - 04:24:01PM] [abSneakAttack]: False[03/30/2012 - 04:24:01PM] [abBashAttack]: False[03/30/2012 - 04:24:01PM] [abHitBlocked]: False[03/30/2012 - 04:24:01PM] [::temp116]: "OnActorHit [masterambushscript < (0004D1D3)>] [ObjectReference < (00000014)>] [SPELL < (00012FCD)>] [PROJECTILE < (00012FCF)>] False False False "[03/30/2012 - 04:24:01PM] [::temp117]: "OnActorHit [masterambushscript < (0004D1D3)>] [ObjectReference < (00000014)>] [SPELL < (00012FCD)>] [PROJECTILE < (00012FCF)>] False False False False"[03/30/2012 - 04:24:01PM] [::nonevar]: None[03/30/2012 - 04:24:01PM] [::temp118]: 128[03/30/2012 - 04:24:01PM] [::temp119]: True[03/30/2012 - 04:24:01PM] [i]: 0[03/30/2012 - 04:24:01PM] [::temp120]: [kuVTQS ][03/30/2012 - 04:24:01PM] [::temp121]: [kuVTQS ][03/30/2012 - 04:24:01PM] [questRef]: [kuVTQS ][03/30/2012 - 04:24:01PM] [alias kuNPC04 on quest kuAEAliasesQ (02000802)].kuAENPCAliasS.OnHit() - "kuAENPCAliasS.psc" Line 32...
I'm not sure what caused it but I tracked it down to two Actor Events attached to Aliases: OnHit () and OnMagicEffectApply (). Especially, if you call a function in your Script that branches off from that Event. Because Scripts only receive a small amount of CPU time slice (Borgut's post: http://www.gamesas.com/topic/1359724-on-the-run-time-of-skyrims-papyrus-scripts), the calling Script will suspend itself until that other Script finishes its operation.
One-off melee hits didn't (and wouldn't) cause this problem. But I believe continual hits from spells (e.g. Flames, etc...) did. And if your Quest is monitoring only one Alias, it should be ok. But for more intensive mods that apply their changes over many (e.g. 30) Aliases, the problem is real. EDIT: Though my mod had 30 Aliases, only a handful (5) of them were populated. So this could also occur on mods that have a very small number of Aliases.
The solution I am testing is to throttle the propagation of the Event to only 1 a second. So, even if my Aliases will receive the OnHit () and OnMagicEffectApply () calls several times a second, my other Function will not. I can't think of a situation when missing out on some of those Events would cause detriment to any changes a mod is trying to apply.
To see what I mean by "throttling the propagation of the Event", look at OnHit () and OnMagicEffectApply () Functions below. OnHit () is throttled. OnMagicEffectApply () is not.
Spoiler
Float lastHitTimeEvent OnHit(ObjectReference akAggressor, Form akSource, Projectile akProjectile, bool abPowerAttack, bool abSneakAttack, bool abBashAttack, bool abHitBlocked) Float timeNow = Utility.GetCurrentRealTime () If timeNow - lastHitTime > 1 lastHitTime = timeNow Actor actorRef = GetActorReference () questMain.OnActorHit (actorRef, akAggressor, akSource, akProjectile, abPowerAttack, abSneakAttack, abBashAttack, abHitBlocked) EndIfEndEventEvent OnMagicEffectApply(ObjectReference akCaster, MagicEffect akEffect) Actor actorRef = GetActorReference () questMain.OnActorMagicEffectApply(actorRef, akCaster, akEffect)EndEvent
Currently, it looks like throttling works. Testing continues.