Performance and stability

Top  Previous  Next

Keep in mind that your plug-in becomes a part of the DigiView application.  Its performance and stability affects the entire application.  At any given time, there can be dozens of plug-ins operating.  Also, each plug-in is called to parse the raw data each time new data is captured.  The plug-in's parse() routine is very performance sensitive.  It can receive hundreds of thousands of calls per data capture, per signal.
DigiView is fairly tolerant to plug-in lockups or crashes.  The plug-in is loaded as a separate process.  All communications with it use separate threads, timeouts (about 2 seconds) and large FIFOs.  If the plug-in stops responding, DigiView will attempt to kill the process.  However, killing a process is not always successful and certainly undesirable.  If you are having problems with plug-in lock ups, it could affect the stability of the DigiView application or the system.