EricInstanzHandle

Type Alias EricInstanzHandle 

Source
pub type EricInstanzHandle = *mut EricInstanz;
Expand description

@brief Handle auf eine ERiC-Instanz.

ERiC-Instanzen werden von der Multithreading-API angelegt, verwendet und wieder freigegeben, siehe ericmtapi.h.

Alle API-Funktionen der Multithreading-API nehmen einen Zeiger auf eine ERiC-Instanz entgegen und verrichten ihre Aufgaben auf dieser ERiC-Instanz. Die EricInstanz enthält sämtliche veränderlichen Zustände des ERiC. Dies sind ERiC-Einstellungen, Plugin- und Log-Verzeichnis, Proxyeinstellungen, Zertifikatshandle, Rückgabepuffer, etc.

Es können mehrere ERiC-Instanzen parallel angelegt werden. Jede dieser ERiC-Instanzen ist unabhängig von allen anderen ERiC-Instanzen. Verfügen mehrere Threads jeweils über ihre eigene ERiC-Instanz, können sie diese parallel verwenden. Dazu müssen die Threads den API-Funktionen der Multithreading-API ihre jeweils eigene ERiC-Instanz übergeben.

ERiC-Instanzen sollten nicht für jede Verarbeitung eines Steuerfalls neu erstellt und konfiguriert werden. Siehe hierzu @typeDokumentation{ERiC-Entwicklerhandbuch.pdf}, Kap. “Hinweise zum optimierten Einsatz von ERiC-Instanzen und Plugins”

ERiC-Instanzen können zwischen Threads ausgetauscht werden. Eine ERiC-Instanz darf aber nicht in zwei Threads gleichzeitig verwendet werden.

@see - @typeDokumentation{ERiC-Entwicklerhandbuch.pdf}, Kap. “Hinweise zum optimierten Einsatz von ERiC-Instanzen und Plugins” - ::EricMtInstanzErzeugen() - ::EricMtInstanzFreigeben()