shutdown method
void
shutdown()
Shutdown the engine and release all resources. Closes every live conversation handle first (legacy + any opened directly).
Implementation
void shutdown() {
// Copy because close() mutates _handles.
for (final h in _handles.toList()) {
h.close();
}
_handles.clear();
_legacyHandle = null;
// Tear down the shared virtual-session conversation too.
final vc = _virtualConv;
if (vc != null) {
_deleteConversation(vc);
_virtualConv = null;
_virtualActiveToken = null;
}
if (_engine != null && _engine != nullptr && _bindings != null) {
_bindings!.litert_lm_engine_delete(_engine!);
_engine = null;
gemmaLog('[LiteRtLmFfi] Engine deleted');
}
_isInitialized = false;
_backend = null;
}