Multi Instance DAW Crash Issue Guide
-
@dustbro said in Multi Instance DAW Crash Issue Guide:
@orange said in Multi Instance DAW Crash Issue Guide:
Number one cause is the amount of used setAttribute APIs
@orange @Christoph-Hart does this also include setValue()? If not, I might use scripts to set the value of panels, and then us the Panel Property Editor to assign Processor/Parameter IDs.
Can panels even do that?...Since generally I use setAttributes, I haven't made experiments with setValue() & Panels.
But setValue should be ok I think.
-
@LeeC said in Multi Instance DAW Crash Issue Guide:
@orange @Christoph-Hart
I know it depends, but is there a ballpark number for the amount ofsetAttributes
we should be using simultaneously?Also, would using the
showControl
instead ofset("visible",value);
to toggle visibility of components help to avoid crashes aswell?I haven't seen any issues yet with using too many showControl or set("visible")... stuff. For multi-instance crash you need to make experiments with beta testers.
-
@d-healey said in Multi Instance DAW Crash Issue Guide:
This sounds fishy to me. Setting attributes shouldn't be causing any issues. I suspect there are other problems with the scripts.
It's been covered here by @Christoph-Hart befrore: https://forum.hise.audio/topic/2826/debugging-with-reaper/25
You can use as many setAttributes as you can, it's not a problem on most systems. But the issue is "Multi Instance DAW Crash" in "Some Systems".
That doesn't mean it happens in all computers. But if you see this in a computer, it will do that crash in all DAWs :) You know what: while I haven't seen any multi instance crash in my 7 years old laptop, some users were repoting this issue to me. Honestly I couldn't replicate it. Then I got a new Intel 10th generation i9, 128GB RAM, 12GB NVidia 2080Ti computer, then guess what: it crashes for 5 plugins :) Same plugin, new system.
Are you setting attributes only in deferred scripts?
Yeah, I am using it in main interface script only. But the issue happens also with the plugin that uses only One Timer Object (100ms - on preset label only). Whole plugin is a Parametric eq, ShapeFX and setAttributes. Nothing more. I can open 20 instances in old pc, but crash for 5 instances in new one :) Crash reporting beta testers see the multi instance crash too.
This is more interesting, when the deferring callbacks are disabled, sometimes crash reduces :)
Are you setting attributes in MIDI callbacks or timers?
No.
-
@d-healey said in Multi Instance DAW Crash Issue Guide:
Are you setting attributes only in deferred scripts?
Synth.deferCallbacks(true);
This is the second line on my onInit. I don't need to call this on my separate "include" scripts, right? Those should be considered part of the Interface script.
-
@dustbro Correct.
Could someone create a minimal example project that consistently demonstrates the issue?
-
Updated. Added "else if" statements.
-
@orange Thank you sir, and what's about
Synth.deferCallbacks(true);
Is this something that can help?
and is this works in FX plugins?Thanks
-
@Natan It depends in which script you are using it.
I am using it in the main interface script, it works..
-
@orange Great to hear that :) will search and read more about it
Thank you sir -
@orange Sir,
How we can Track The Messages sent by A Parameter, Is there any Outputs That shows how many messages generate Once we, For Example, click A Button?!Thanks